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

ฉันจะได้ผลลัพธ์ที่คล้ายกันเช่นการใช้ลูปในส่วนคำสั่ง MySQL เพื่อแสดงเฉพาะบันทึก ID สำรองได้อย่างไร


รับผลลัพธ์ที่คล้ายกันโดยใช้ MySQL IN() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable( ClientId int, ClientName varchar(100), ClientAge int);Query OK, 0 แถวได้รับผลกระทบ (0.70 วินาที)

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

mysql> แทรกลงในค่า DemoTable (100,'Chris',34) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที)mysql> แทรกลงในค่า DemoTable (101,'Robert',31); แบบสอบถามตกลง 1 แถว ได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable (103, 'David', 33); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable (104, 'Mike', 45); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า DemoTable (105,'Sam',39); ตกลง ตกลง 1 แถวได้รับผลกระทบ (0.09 วินาที)

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

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

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

<ก่อนหน้า>+----------+-----------+-----------+| รหัสลูกค้า | ชื่อลูกค้า | อายุลูกค้า |+----------+-----------+-----------+| 100 | คริส | 34 || 101 | โรเบิร์ต | 31 || 103 | เดวิด | 33 || 104 | ไมค์ | 45 || 105 | แซม | 39 |+----------+-----------+-----------+5 แถวในชุด (0.00 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อให้ได้ผลลัพธ์ที่คล้ายกันเช่นการวนซ้ำโดยใช้ MySQL IN() -

mysql> เลือก ClientId, ClientName, ClientAge จาก DemoTablewhere ClientId IN (101,103,105);

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

<ก่อนหน้า>+----------+-----------+-----------+| รหัสลูกค้า | ชื่อลูกค้า | อายุลูกค้า |+----------+-----------+-----------+| 101 | โรเบิร์ต | 31 || 103 | เดวิด | 33 || 105 | แซม | 39 |+----------+-----------+-----------+3 แถวในชุด (0.00 วินาที)