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

ลบบันทึกจากตาราง MySQL ด้วย IN() ในแบบสอบถามเดียว


ให้เราสร้างตาราง -

mysql> สร้างตาราง DemoTable1922 ( StudentId int ไม่ใช่ NULL AUTO_INCREMENT PRIMARY KEY, StudentName varchar(20) ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.00 วินาที)

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

mysql> แทรกลงในค่า DemoTable1922(StudentName) ('Chris'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1922 (StudentName) ('Robert'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.00 วินาที) mysql> แทรกลงในค่า DemoTable1922 (StudentName) ('David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.00 วินาที) mysql> แทรกลงในค่า DemoTable1922 (StudentName) ('Mike'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.00 วินาที)

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

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

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

<ก่อนหน้า>+-----------+-------------+| รหัสนักศึกษา | ชื่อนักเรียน |+-----------+-------------+| 1 | คริส || 2 | โรเบิร์ต || 3 | เดวิด || 4 | Mike |+-----------+-------------+4 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อลบระเบียนจากตารางที่มี IN() -

mysql> ลบออกจาก DemoTable1922 โดยที่ StudentId IN(1,2,3,4);แบบสอบถามตกลง ได้รับผลกระทบ 4 แถว (0.00 วินาที)

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

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

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

ชุดเปล่า (0.00 วินาที)