ใช่ คุณสามารถทำสิ่งนี้ได้ด้วย ORDER BY FIELD() จาก MySQL ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable -> ( -> Number int -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.54 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable(19) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable (30); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.20 วินาที) mysql> แทรกลงในค่า DemoTable ( 34); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.32 วินาที) mysql> แทรกลงในค่า DemoTable (28); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable (25); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ ( 0.12 วินาที) mysql> แทรกลงในค่า DemoTable (29); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงในค่า DemoTable (24); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+---------+| เบอร์ |+-------+| 19 || 30 || 34 || 28 || 25 || 29 || 24 |+-------+7 แถวในชุด (0.00 วินาที)ต่อไปนี้เป็นแบบสอบถามเพื่อส่งคืนผลลัพธ์ในลำดับเดียวกันกับชุดค่า -
mysql> เลือก *จาก DemoTable -> ORDER BY FIELD(Number, 30,19,34,25,28,29,24);
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้แสดงผลลัพธ์ในลำดับเดียวกัน -
<ก่อนหน้า>+---------+| เบอร์ |+-------+| 30 || 19 || 34 || 25 || 28 || 29 || 24 |+-------+7 แถวในชุด (0.00 วินาที)