以下の表から "bundle"エントリを選択する必要があります。各リリースには独自の「cat_no」があります。なぜなら、私はGROUP BYを使用する必要があるからです。MYSQL GROUP BYとORDER BY with 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'が何であるのか説明できますか?トラック= 'bundle'と仮定しています.0,1は優先順位ですか? – user1209203
1. 't'はサブクエリエイリアスです(MySQLはそれを必要とします)。 2.はい、IF(...)を使用して他の「トラック」番号の前に「バンドル」を配置します。 – Devart
ありがとう、私はサブキーレで読んでよ – user1209203