MYSQL如何指定字段的值等于0排在最后

让我们首先创建一个表-

create table DemoTable
   -> (
   -> Number int
   -> );

使用插入命令在表中插入一些记录-

insert into DemoTable values(9);

insert into DemoTable values(4);

insert into DemoTable values(0);

insert into DemoTable values(7);

insert into DemoTable values(11);

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

select *from DemoTable

输出结果

这将产生以下输出-

+--------+
| Number |
+--------+
|      9 |
|      4 |
|      0 |
|      7 |
|     11 |
+--------+
5 rows in set (0.00 sec)

以下是使用ORDER BY的查询并将0放在最后,以保持升序搜索-

select *from DemoTable order by Number=0,Number;

输出结果

这将产生以下输出-

+--------+
| Number |
+--------+
| 4      |
| 7      |
| 9      |
| 11     |
| 0      |
+--------+
5 rows in set (0.00 sec)