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

แทรกค่าในตารางโดย MySQL SELECT จากตารางอื่นใน MySQL?


สำหรับสิ่งนี้ ให้ใช้คำสั่ง INSERT INTO SELECT ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1 -> ( -> Id int, -> Name varchar(20), -> Age int -> );Query OK, 0 แถวได้รับผลกระทบ (1.72 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable1 (100,'Chris',24) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.61 วินาที)mysql> แทรกลงในค่า DemoTable1 (101,'Adam',23); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable1 (102, 'John', 25); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable1 (103, 'Carol', 26); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.26 วินาที)

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

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

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อนหน้า>+------+-------+------+| รหัส | ชื่อ | อายุ |+------+-------+------+| 100 | คริส | 24 || 101 | อดัม | 23 || 102 | จอห์น | 25 || 103 | แครอล | 26 |+------+-------+------+4 แถวในชุด (0.00 วินาที)

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

mysql> สร้างตาราง DemoTable2 -> ( -> EmployeeId int, -> EmployeeFirstName varchar(20), -> EmployeeAge int -> );Query OK, 0 แถวได้รับผลกระทบ (1.63 วินาที)

นี่คือแบบสอบถามเพื่อแทรกค่าใน DemoTable2 จาก MySQL เลือกจาก DemoTable1 -

mysql> แทรกลงใน DemoTable2(EmployeeId,EmployeeFirstName,EmployeeAge) เลือก Id,Name,Age จาก DemoTable1 โดยที่ Id=101;Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)บันทึก:1 รายการซ้ำ:0 คำเตือน:0

ให้เราตรวจสอบบันทึกตาราง -

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

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

<ก่อนหน้า>+-----------+--------------------------+------------- +| รหัสพนักงาน | EmployeeFirstName | อายุพนักงาน |+-----------+-------------------+-----------+ | 101 | อดัม | 23 |+-----------+-------------+-------------+ 1 แถวในชุด (0.00 วินาที)