我有以下声明
SELECT * FROM cds
WHERE genre='rock'
GROUP BY cat_no
ORDER BY ABS(track) DESC
LIMIT 0,3
每张CD在每个音轨的数据库中有一行,而另一个CD作为一个整体,而不是音轨编号被称为'包'(但只有当CD有多个音轨时),上述声明才会选择三个'捆绑'条目,但我希望能够选择最新的3.如果我使用ABS(日期,曲目)它不起作用。
表
genre cat_no track date
rock 001 1 09323123
rock 001 2 09323123
rock 001 bundle 09323123
rock 002 1 09323123
rock 002 2 09323123
rock 002 bundle 09323123
rock 003 1 09323123
rock 003 2 09323123
rock 003 bundle 09323123
答案 0 :(得分:0)
这个怎么样:
SELECT * FROM cds
WHERE genre = 'rock'
ORDER BY ABS(track) ASC
LIMIT 0, 3;
或者:
SELECT * FROM cds
WHERE genre = 'rock' AND track = 'bundle'
ORDER BY date DESC
LIMIT 0, 3;