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

ใช้ MySQL ORDER BY โดยไม่ใช้ ASC หรือ DESC หรือไม่


สำหรับสิ่งนี้ คุณสามารถใช้ FIND_IN_SET() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> Number int -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (2.25 วินาที)

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

mysql> แทรกลงในค่า DemoTable (20) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.91 วินาที) mysql> แทรกลงในค่า DemoTable (60) แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.69 วินาที) mysql> แทรกลงในค่า DemoTable ( 40); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.72 วินาที) mysql> แทรกลงในค่า DemoTable (800); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.75 วินาที)

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

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

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

<ก่อนหน้า>+---------+| เบอร์ |+-------+| 20 || 60 || 40 || 800 |+-------+4 แถวในชุด (0.00 วินาที)

นี่คือการสืบค้นเพื่อใช้งาน MySQL ORDER BY โดยไม่ใช้ ASC หรือ DESC

mysql> เลือก *จาก DemoTable -> สั่งซื้อโดย FIND_IN_SET(Number,'40,20,800,60');

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

<ก่อนหน้า>+---------+| เบอร์ |+-------+| 40 || 20 || 800 || 60 |+-------+4 แถวในชุด (0.14 วินาที)