如何使用MySQL ORDER BY按值排序?

为此,请使用ORDER BY子句。让我们首先创建一个表-

mysql> create table DemoTable
   (
   StudentId int
   );

现在您可以使用insert命令在表中插入一些记录-

mysql> insert into DemoTable values(100);
mysql> insert into DemoTable values(60);
mysql> insert into DemoTable values(70);
mysql> insert into DemoTable values(45);
mysql> insert into DemoTable values(55);
mysql> insert into DemoTable values(78);

使用select语句显示表中的所有记录-

mysql> select *from DemoTable;

输出结果

+-----------+
| StudentId |
+-----------+
| 100       |
| 60        |
| 70        |
| 45        |
| 55        |
| 78        |
+-----------+
6 rows in set (0.00 sec)

以下是使用ORDER BY按值排序的查询。在这里,由于我们已使用ORDER BY设置了其顺序,因此首先显示70。其余ID以升序显示-

mysql> select *from DemoTable order by StudentId=70 desc,StudentId asc;

输出结果

+-----------+
| StudentId |
+-----------+
| 70        |
| 45        |
| 55        |
| 60        |
| 78        |
| 100       |
+-----------+
6 rows in set (0.00 sec)