请教SQL之order by的高级排序!!

宇宙最强皮皮虾 2015-07-24 05:29:46

请问如何在SQL代码的Order by 中写条件?

如:

有一个表的数据需要将已结束的全部排列到最后,而未结束的数据全部按照发布时间来排序?
...全文
425 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
中国风 2015-08-03
  • 打赏
  • 举报
回复
SELECT * FROM TABLENAME ORDER BY CASE WHEN 状态='已结束' THEN 2 ELSE 1 END ASC,发布时间 ASC
shoppo0505 2015-07-24
  • 打赏
  • 举报
回复
Select * from table Where 未结束的 Order by 时间 Union all Select * from table Where 已结束的
Pact_Alice 2015-07-24
  • 打赏
  • 举报
回复
select * from tablename where case when status=‘已结束’ then 1 when status='未结束' then 0 end ,ReleaseTime 我不知道你这个已结束与未结束用什么表示的,,所以我就按照自己想的来处理了

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧