怎么让满足某些条件的结果排在最前?

ahxjolin 2016-09-18 03:26:48
如何写一个sql,列出表中所有结果,让满足字段a>10或b>20或c>30的结果排在最前,其他结果排在后面?
...全文
857 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
丶非暖 2020-09-15
  • 打赏
  • 举报
回复
引用 2 楼 js14982 的回复:
order by case when a>10 or b>20 or c>30 then 1 else 2 end ;
这个写法太棒了
zengjc 2016-09-20
  • 打赏
  • 举报
回复
引用 2 楼 js14982 的回复:
order by case when a>10 or b>20 or c>30 then 1 else 2 end ;
受教了
卖水果的net 2016-09-19
  • 打赏
  • 举报
回复
用 2# 的方法最好 如果拆成两个 union all 还要扫描两次表
blueocean1 2016-09-19
  • 打赏
  • 举报
回复
select * from ** where **** order by a,b,c
ahxjolin 2016-09-18
  • 打赏
  • 举报
回复
引用 2 楼 js14982 的回复:
order by case when a>10 or b>20 or c>30 then 1 else 2 end ;
多谢指点 这种写法更好
ahxjolin 2016-09-18
  • 打赏
  • 举报
回复
引用 1 楼 ghx287524027 的回复:
分为两部分数据进行查询,然后在 union all
豁然开朗 谢谢!
js14982 2016-09-18
  • 打赏
  • 举报
回复
order by case when a>10 or b>20 or c>30 then 1 else 2 end ;
ghx287524027 2016-09-18
  • 打赏
  • 举报
回复
分为两部分数据进行查询,然后在 union all

17,091

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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