[英]Mysql sort and sort again, but this does not work ORDER BY date DESC, view DESC
我有一張有 400 個條目的表,我先進行排序以獲取最新條目並限制 20 個
我最終得到了一個 output 僅限於最新的 20 個條目,按日期排序
SELECT date,view FROM `blog` order by date DESC limit 20
date view
2011/08/16 18
2011/08/15 134
2011/08/15 20
2011/08/13 800
...
但是現在我想再次排序這個 output,如果我嘗試添加另一個排序,沒有任何變化
SELECT date,view FROM `blog` order by date DESC, view DESC limit 20
date view
2011/08/16 18
2011/08/15 134
2011/08/15 20
2011/08/13 800
我想擁有
date view
2011/08/13 800
2011/08/15 134
2011/08/15 20
2011/08/16 18
謝謝你的幫助!!!
我是否需要創建一個 tmp 表並使用該表,或者是否有更靈活的方法?
這應該有效; 你只是 select 從第一個結果集中。
SELECT x.date, x.view FROM (SELECT date,view FROM `blog` order by date DESC limit 20) as x order by view DESC
是做什么的:它首先從博客中選擇最后 20 條記錄。 它使用結果作為下一個 SELECT 的輸入,根據視圖對其進行降序排序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.