我需要從下表中選擇「捆綁」條目,但僅當捆綁包存在其他明智的選擇軌道1從每個版本。每個版本都有一個獨特的「cat_no」,這就是爲什麼我需要使用GROUP BY。MYSQL GROUP BY和ORDER BY與ABS
SELECT * FROM cds
WHERE genre='rock'
GROUP BY cat_no
ORDER BY ABS(track) DESC
LIMIT 0,3
這是我所嘗試過的,但有時在該版本的軟件包中有時會獲得第1個軌道。
表
genre cat_no track
rock 001 1
rock 001 2
rock 001 bundle
rock 002 1
rock 002 2
rock 002 bundle
rock 003 1
rock 003 2
謝謝你的工作,但你能解釋't'是什麼,我假設track ='bundle',0,1是一個優先順序? – user1209203 2012-03-13 14:59:31
1.'t'是一個子查詢別名(MySQL需要它); 2.是的,IF(...)用於將「捆綁」放在其他卡車號碼之前。 – Devart 2012-03-13 15:25:43
謝謝我會閱讀sub-queires – user1209203 2012-03-13 16:14:31