Share tips.

tips.html

คำสั่งในการแทนที่หรือเพิ่มแถว REPLACE INTO

คำสั่งในการแทนที่แถว โดยจะอ้างอิงจากฟิลด์แรก  (ถ้าไม่พบจะเพิ่มแถว จะเป็นการเพิ่มแถวสุดท้ายของตาราง)

รูปแบบคำสั่ง
/* แบบสั้น */
REPLACE INTO `ชื่อตาราง` VALUES ('data_1','data_2','data_3','data_n');

/* แบบปกติ */
REPLACE INTO `ชื่อตาราง` (filed_1, filed_2, filed_3, filed_n) VALUES ('data_1','data_2','data_3','data_n');

ตัวอย่าง 1
/* ถ้าพบฟิลด์ จะเป็นการแทนที่แถว */

REPLACE INTO `products` VALUES (2,'Boat with 2 Engine','200000','2');

/* หรือ */

REPLACE INTO `products` (product_id, product_name, product_price, category_id) VALUES (2,'Boat with 2 Engine','200000','2');

เป็นการแทนที่ข้อมูลไปในฟิลด์ product_id, product_name, product_price และ category_id ที่ตาราง products

จะได้ผลลัพธ์ตามตัวอย่าง

product_id product_name product_price category_id
1 Boat (small) 10,000 1
2 Boat with 2 Engine 200,000 2
4 Speed boat 500,000 1

ตัวอย่าง 2
/* ถ้าไม่พบฟิลด์ จะเป็นการเพิ่มแถวใหม่ */

REPLACE INTO `products` VALUES (5,'Jet Ski','300000','1');

/* หรือ */

REPLACE INTO `products` (product_id, product_name, product_price, category_id) VALUES (5,'Jet Ski','300000','1');

เป็นการเพิ่มข้อมูลไปในฟิลด์ product_id, product_name, product_price และ category_id ที่ตาราง products

จะได้ผลลัพธ์ตามตัวอย่าง

product_id product_name product_price category_id
1 Boat (small) 10,000 1
2 Boat with Engine 90,000 1
4 Speed boat 500,000 1
5 Jet Ski 300,000 1

 

จะเห็นได้ว่า ทั้งรูปแบบที่ 1 และ 2 สามารถเพิ่มข้อมูลเข้าไปในฟิลด์ได้เหมือนกัน ซึ่งอาจเลือกใช้งานได้ตามความถนัดได้เลย...

17 มิถุนายน 2556 07:52:09