ใช้ ORDER BY ... DESC LIMIT 1 อัปเดตแถวเดียวที่ตรงเงื่อนไขมากที่สุด
สร้างตารางและเพิ่มข้อมูล
mysql> create table DemoTable (
StudentName varchar(100),
StudentMarks int );
Query OK, 0 rows affected (0.54 sec)
mysql> insert into DemoTable values('Chris',45); Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Bob',78); Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable values('Mike',34); Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('Robert',67); Query OK, 1 row affected (0.16 sec)
อัปเดตแถวที่คะแนนมากที่สุด (Bob 78 คะแนน)
mysql> update DemoTable set StudentName='Adam' order by StudentMarks DESC LIMIT 1; Query OK, 1 row affected (0.10 sec)
ตรวจสอบผลลัพธ์
mysql> select * from DemoTable;
+-------------+--------------+ | StudentName | StudentMarks | +-------------+--------------+ | Chris | 45 | | Adam | 78 | | Mike | 34 | | Robert | 67 | +-------------+--------------+ 4 rows in set (0.00 sec)
โครงสร้าง: UPDATE table SET col=val ORDER BY col DESC LIMIT n