使用sql按自己的`position`排序

时间:2016-11-24 09:57:56

标签: mysql

我在position is null的表格中有几百个项目,我想按位置执行订单并将position设置为1,2,3,4等等,但同时生成其他结果{ {1}}

问题是,如果我订购position is null,那么第一个结果会出现在by order by position asc的位置,并且只有在它们出现后我才想成为第一个结果。我对position is null的这些结果到底会是什么呢。

是否有可能只用sql解决这个问题?

2 个答案:

答案 0 :(得分:2)

您可以使用:

Select position --Your other columns
from yourtable
where position is not null
order by position asc
UNION
Select position --Your other columns
from yourtable
where position is null

但请务必为每个选择

指定相同的列数和名称

答案 1 :(得分:1)

select position
from YourTable
order by case 
when position is null 
then 1 else 0 end, position