现在由于项目不断升级很多,数据库设计难免会存在业务上的不合理在所难免,比如某字段有三种形式-1,0,1 ,-1表示未发布,0表示未审核,1表示审核,现在要求我们根据这个字段排序,未审核的排在最上面,但是字段存储的-1,0,1,正排序,倒排序,都满足不了0在最上面,百度了一下,还是找得到解决方案的,sql如下:
SELECT [大题型编号]
,[大题型名称]
,[大题型数]
,[存在小题型]
FROM [dbo].[大题型表]
order by (case when [存在小题型]=0 then 0 else 1 end),[存在小题型]
执行结果如下: