首頁 > 後端開發 > php教程 > mysql排序问题~

mysql排序问题~

WBOY
發布: 2016-06-20 12:31:26
原創
982 人瀏覽過

我现在有两个字段 addDay(添加时间)和status(状态)。
我想要实现以下排序方式:
1.按addDay降序排列,并且status升序排列且status2.把status>=6的放在规则1的后面,并且按addDay降序和status升序排列

addDay         status
2016-4-14    1
2016-4-14    2
2016-4-13    1
2016-4-13    2
2016-4-14    6
2016-4-13    6

请问各位大神,这样的排序,应该如何写sql语句?


回复讨论(解决方案)

select addDay,status from table where status < 6 order by addDay desc,status ascunion allselect addDay,status from table where status >= 6 order by addDay desc,status asc
登入後複製

order by case when status<6 then addDay else 1 end desc,status asc
登入後複製

order by case when status<6 then addDay else 1 end desc,addDaydesc,status asc
登入後複製

select * from table order by if(status<6 , 1, 0 ) desc, addDay desc,status asc

select * from tbl_name order by status>=6, addDay desc, status asc
登入後複製

谢谢各位了,问题已经解决了

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板