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

จะทำให้ผลลัพธ์ MySQL ตั้งค่าเหมือนกับที่ระบุได้อย่างไร


สำหรับสิ่งนี้ ให้ใช้ MySQL FIND_IN_SET() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable1563 -> ( -> StudentId int, -> StudentName varchar(20) -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.52 วินาที)

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

mysql> แทรกลงในค่า DemoTable1563 (1001, 'Chris'); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.11 วินาที) mysql> แทรกลงในค่า DemoTable1563 (1010, 'Bob'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.15 วินาที )mysql> แทรกลงในค่า DemoTable1563 (1005, 'Chris'); แบบสอบถามตกลง, 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable1563 (1015, 'David'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) mysql> แทรกลงในค่า DemoTable1563 (1030, 'Mike'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.18 วินาที) mysql> แทรกลงในค่า DemoTable1563 (1020, 'Sam'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.14 วินาที)

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

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

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

<ก่อนหน้า>+-----------+-------------+| รหัสนักศึกษา | ชื่อนักเรียน |+-----------+-------------+| 1001 | คริส || 1010 | บ๊อบ || 1005 | คริส || 1015 | เดวิด || 1030 | ไมค์ || 1020 | แซม |+-----------+-------------+6 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อสร้างผลลัพธ์ MySQL ชุดเดียวกับที่ระบุ -

mysql> เลือก * จาก DemoTable1563 -> โดยที่ StudentId IN(1001,1030,1010,1020) -> สั่งซื้อโดย find_in_set(StudentId,'1001,1030,1010,1020');

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

<ก่อนหน้า>+-----------+-------------+| รหัสนักศึกษา | ชื่อนักเรียน |+-----------+-------------+| 1001 | คริส || 1030 | ไมค์ || 1010 | บ๊อบ || 1020 | แซม |+-----------+-------------+4 แถวในชุด (0.00 วินาที)