Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

จะสร้างตารางใหม่จากการรวมสองตารางเข้ากับ MySQL union ได้อย่างไร


ต่อไปนี้เป็นรูปแบบการรวมสองตารางโดยใช้ MySQL union

สร้างตาราง yourTableName( เลือก *จาก yourTableName1)UNION( เลือก *จาก yourTableName2);

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามในการสร้างตารางแรกมีดังนี้

mysql> สร้างตาราง Old_TableDemo -> ( -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(20) -> );Query OK, 0 แถวได้รับผลกระทบ (0.63 วินาที)

แบบสอบถามเพื่อสร้างตารางที่สองมีดังนี้

mysql> สร้างตาราง Old_TableDemo2 -> ( -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(20) -> );Query OK, 0 แถวได้รับผลกระทบ (0.60 วินาที)

แทรกบางระเบียนในตารางแรกโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −

mysql> แทรกลงในค่า Old_TableDemo(ชื่อผู้ใช้) ('John'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.22 วินาที) mysql> แทรกลงใน Old_TableDemo (ชื่อผู้ใช้) ค่า ('Carol'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.15 วินาที)

แสดงระเบียนทั้งหมดจากตารางแรกโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก Old_TableDemo;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+---------+----------+| รหัสผู้ใช้ | ชื่อผู้ใช้ |+---------+----------+| 1 | จอห์น || 2 | Carol |+-------+----------+2 แถวในชุด (0.00 วินาที)

ตอนนี้คุณสามารถแทรกบางระเบียนในตารางที่สองโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้ −

mysql> แทรกลงใน Old_TableDemo2(ชื่อผู้ใช้) ค่า ('Larry'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.22 วินาที) mysql> แทรกลงใน Old_TableDemo2 (ชื่อผู้ใช้) ค่า ('แซม'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.10 วินาที)

แสดงระเบียนทั้งหมดจากตารางที่สองโดยใช้คำสั่ง select แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก Old_TableDemo2;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+---------+----------+| รหัสผู้ใช้ | ชื่อผู้ใช้ |+---------+----------+| 1 | แลร์รี่ || 2 | แซม |+-------+----------+2 แถวในชุด (0.00 วินาที)

นี่คือคิวรีเพื่อสร้างตารางใหม่จากการผสานสองตารางกับยูเนี่ยน

mysql> สร้างตาราง UserTableDemo -> ( -> เลือก *จาก Old_TableDemo -> ) -> UNION -> ( -> เลือก *จาก Old_TableDemo2 -> ); ตกลง ตกลง 4 แถวได้รับผลกระทบ (1.18 วินาที) บันทึก:4 รายการซ้ำ :0 คำเตือน:0

ให้เราตรวจสอบบันทึกตารางของตารางใหม่ แบบสอบถามมีดังนี้ −

mysql> เลือก *จาก UserTableDemo;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+---------+----------+| รหัสผู้ใช้ | ชื่อผู้ใช้ |+---------+----------+| 1 | จอห์น || 2 | แครอล || 1 | แลร์รี่ || 2 | แซม |+---------+----------+4 แถวในชุด (0.00 วินาที)