ฐานข้อมูล H2 - ผสาน
คำสั่ง MERGE ใช้เพื่ออัปเดตแถวที่มีอยู่และแทรกแถวใหม่ลงในตาราง คอลัมน์คีย์หลักมีบทบาทสำคัญขณะใช้คำสั่งนี้ ใช้เพื่อค้นหาแถว
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง MERGE
MERGE INTO tableName [ ( columnName [,...] ) ]
[ KEY ( columnName [,...] ) ]
{ VALUES { ( { DEFAULT | expression } [,...] ) } [,...] | select }
ในไวยากรณ์ข้างต้นส่วนคำสั่ง KEY ใช้เพื่อระบุชื่อคอลัมน์คีย์หลัก นอกเหนือจากคำสั่ง VALUES แล้วเราสามารถใช้ค่าดั้งเดิมเพื่อแทรกหรือเราสามารถดึงและเก็บค่าตารางอื่นลงในตารางนี้โดยใช้คำสั่ง select
ตัวอย่าง
ในตัวอย่างนี้ให้เราลองเพิ่มระเบียนใหม่ในตารางลูกค้า ต่อไปนี้เป็นรายละเอียดของระเบียนใหม่ในตาราง
ชื่อคอลัมน์ | มูลค่า |
---|---|
ID | 8 |
ชื่อ | Lokesh |
อายุ | 32 |
ที่อยู่ | ไฮเดอราบาด |
เงินเดือน | 2500 |
ใช้แบบสอบถามต่อไปนี้ให้เราแทรกบันทึกที่กำหนดลงในแบบสอบถามฐานข้อมูล H2
MERGE INTO CUSTOMER KEY (ID) VALUES (8, 'Lokesh', 32, 'Hyderabad', 2500);
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
Update count: 1
ให้เราตรวจสอบบันทึกของตารางลูกค้าโดยดำเนินการค้นหาต่อไปนี้
SELECT * FROM CUSTOMER;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
ID | ชื่อ | อายุ | ที่อยู่ | เงินเดือน |
---|---|---|---|---|
1 | ราเมช | 32 | อาเมดาบัด | พ.ศ. 2543 |
2 | คิลัน | 25 | เดลี | 1,500 |
3 | Kaushik | 23 | โคตะ | พ.ศ. 2543 |
4 | Chaitali | 25 | มุมไบ | 6500 |
5 | ฮาร์ดิค | 27 | โภปาล | 8500 |
6 | Komal | 22 | ส.ส. | 4500 |
7 | Muffy | 24 | อินดอร์ | 10,000 |
8 | Lokesh | 32 | ไฮเดอราบาด | 2500 |
ตอนนี้ให้เราพยายามอัปเดตบันทึกโดยใช้ไฟล์ Mergeคำสั่ง ต่อไปนี้เป็นรายละเอียดของบันทึกที่จะอัปเดต
ชื่อคอลัมน์ | มูลค่า |
---|---|
ID | 8 |
ชื่อ | โลกิ |
อายุ | 32 |
ที่อยู่ | ไฮเดอราบาด |
เงินเดือน | 3000 |
ใช้แบบสอบถามต่อไปนี้เพื่อแทรกระเบียนที่กำหนดลงในแบบสอบถามฐานข้อมูล H2
MERGE INTO CUSTOMER KEY (ID) VALUES (8, 'Loki', 32, 'Hyderabad', 3000);
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
Update count: 1
ให้เราตรวจสอบบันทึกของตารางลูกค้าโดยดำเนินการค้นหาต่อไปนี้
SELECT * FROM CUSTOMER;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้ -
ID | ชื่อ | อายุ | ที่อยู่ | เงินเดือน |
---|---|---|---|---|
1 | ราเมช | 32 | อาเมดาบัด | พ.ศ. 2543 |
2 | คิลัน | 25 | เดลี | 1,500 |
3 | Kaushik | 23 | โคตะ | พ.ศ. 2543 |
4 | Chaitali | 25 | มุมไบ | 6500 |
5 | ฮาร์ดิค | 27 | โภปาล | 8500 |
6 | Komal | 22 | ส.ส. | 4500 |
7 | Muffy | 24 | อินดอร์ | 10,000 |
8 | โลกิ | 32 | ไฮเดอราบาด | 3000 |