สำหรับสิ่งนี้ ให้ใช้ ORDER BY DESC กับ LIMIT clause ลำดับ ORDER BY DESC เรียงลำดับจากมากไปน้อย โดยที่ LIMIT กำหนดจำนวนเร็กคอร์ดที่คุณต้องการ ที่นี่ เราจะตั้งค่า LIMIT 1 เนื่องจากเราต้องการเพียงแผ่นเดียว ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable( StudentName varchar(100), StudentMarks int);Query OK, 0 แถวได้รับผลกระทบ (0.54 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable ('Chris', 45); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที) mysql> แทรกลงในค่า DemoTable ('Bob',78); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที )mysql> แทรกลงในค่า DemoTable ('Mike',34); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.13 วินาที) mysql> แทรกลงในค่า DemoTable ('Robert', 67); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-------------+--------------+| ชื่อนักเรียน | StudentMarks |+-------------+--------------+| คริส | 45 || บ๊อบ | 78 || ไมค์ | 34 || โรเบิร์ต | 67 |+-------------+-------------+4 แถวในชุด (0.00 วินาที)ต่อไปนี้เป็นแบบสอบถามเพื่ออัปเดตค่าเดียวจากตาราง MySQL ที่เรียงลำดับจากมากไปน้อย -
mysql> อัปเดต DemoTableset StudentName='Adam'order โดย StudentMarks DESC LIMIT 1; สืบค้นตกลง 1 แถวได้รับผลกระทบ (0.10 วินาที) แถวที่ตรงกัน:1 เปลี่ยนแล้ว:1 คำเตือน:0
ให้เราตรวจสอบบันทึกตารางอีกครั้ง -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+-------------+--------------+| ชื่อนักเรียน | StudentMarks |+-------------+--------------+| คริส | 45 || อดัม | 78 || ไมค์ | 34 || โรเบิร์ต | 67 |+-------------+-------------+4 แถวในชุด (0.00 วินาที)