MySQL编号排序

Nik*_*ola 3 mysql sql sorting numbers

可以说我有numbers字段numINT的表

项:

364
0
123
0
321
4215
12138
Run Code Online (Sandbox Code Playgroud)

我想把它们归类为ASC.问题是我希望将零置于底部.

我想要的是相当多

SELECT num FROM number WHERE num != 0 ORDER BY num ASC
SELECT num FROM number WHERE num = 0
Run Code Online (Sandbox Code Playgroud)

这可能以一种单一的查询方式完成吗?

我想要实现的是:

123
321
364
4215
12138
0
0
Run Code Online (Sandbox Code Playgroud)

我不知道这是否可能是问的原因.谢谢.

Joh*_*Woo 5

在order by子句中添加此条件,

ORDER BY (num = 0) ASC, num ASC
Run Code Online (Sandbox Code Playgroud)

或者您可以ASC默认省略,

ORDER BY (num = 0), num
Run Code Online (Sandbox Code Playgroud)

OUTPUT

?????????
?  NUM  ?
?????????
?   123 ?
?   321 ?
?   364 ?
?  4215 ?
? 12138 ?
?     0 ?
?     0 ?
?????????
Run Code Online (Sandbox Code Playgroud)