为此,您可以使用UNION。让我们首先创建一个表-mysql> create table DemoTable
-> (
-> Number int
-> );
使用插入命令在表中插入一些记录-mysql> insert into DemoTable values(10);
mysql> insert into DemoTable values(100);
mysql> insert into DemoTable values(-9);
mysql> insert into DemoTable values(-190);
mysql> insert into DemoTable values(190);
mysql> insert into DemoTable values(0);
mysql> insert into DemoTable values(140);
使用select语句显示表中的所有记录-mysql> select *from DemoTable;
输出结果
这将产生以下输出-+--------+
| Number |
+--------+
| 10 |
| 100 |
| -9 |
| -190 |
| 190 |
| 0 |
| 140 |
+--------+
7 rows in set (0.00 sec)
以下是查询以降序显示负值,然后以升序显示正值。最初,我们显示0-mysql> (select *from DemoTable where Number=0)
-> union
-> (select *from DemoTable where Number
-> union
-> (select *from DemoTable where Number > 0 order by Number);
输出
这将产生以下输出-+--------+
| Number |
+--------+
| 0 |
| -9 |
| -190 |
| 10 |
| 100 |
| 190 |
| 140 |
+--------+
7 rows in set (0.03 sec)