หากต้องการสั่งสตริงเป็นตัวเลข ให้ใช้ CAST() ต่อไปนี้เป็นไวยากรณ์ -
เลือก *จาก yourTableName ORDER BY CAST(yourColumnName AS SIGNED) DESC;
ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable ( Id varchar(100) );เคียวรีตกลง 0 แถวได้รับผลกระทบ (0.18 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable ('3'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.07 วินาที) mysql> แทรกลงในค่า DemoTable ('20'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.07 วินาที) mysql> แทรก ลงในค่า DemoTable ('34'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.06 วินาที) mysql> แทรกลงในค่า DemoTable ('21'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.06 วินาที) mysql> แทรกลงในค่า DemoTable ('78 ');แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.04 วินาที)mysql> แทรกลงในค่า DemoTable ('90'); แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.07 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+------+| รหัส |+------+| 3 || 20 || 34 || 21 || 78 || 90 |+------+6 แถวในชุด (0.00 วินาที)ต่อไปนี้เป็นแบบสอบถามเพื่อเรียงลำดับจำนวนเต็ม -
mysql> เลือก *จาก DemoTable ORDER BY CAST (Id AS SIGNED) DESC;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+------+| รหัส |+------+| 90 || 78 || 34 || 21 || 20 || 3 |+------+6 แถวในชุด (0.02 วินาที)