[英]Mysql Order by two columns
我有一張這樣的桌子:
id |date |publisher
1 2014-11-07 100
2 2014-11-07 0
3 2014-11-07 100
4 2014-11-06 0
5 2014-11-06 100
6 2014-11-05 100
7 2014-11-05 0
8 2014-11-05 0
9 2014-11-05 100
我試圖得到這樣的結果:
1 2014-11-07 100
3 2014-11-07 100
2 2014-11-07 0
4 2014-11-06 100
5 2014-11-06 0
6 2014-11-05 100
9 2014-11-05 100
8 2014-11-05 0
7 2014-11-05 100
因此,我試圖按發布日期對表中的數據進行排序,並始終將發布者的價值保持在到目前為止的每一天:
select * from articles
order by publisher DESC, date DESC
我得到這個結果:
1 2014-11-07 100
3 2014-11-07 100
5 2014-11-06 100
6 2014-11-05 100
9 2014-11-05 100
2 2014-11-07 0
4 2014-11-06 0
7 2014-11-05 0
8 2014-11-05 0
哪有錯...
您必須按字段反轉訂單順序,如下所示:
select * from articles
order by date DESC, publisher DESC
ORDER BY子句負責字段的順序。 在此查詢中,我們說:按日期順序按desc順序排序,如果兩個或多個日期相等,則按desc順序對發布者應用另一個順序。
編輯,如我所願,請轉到Sql Fiddle
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.