好的我有一个包含数据的siple表:
id cat_id title (with random values)
1 1 test
2 1 tstt
3 3 tewt
4 2 4324
5 3 rterter
现在,我需要创建一个查询,每个类别只选择一个原始数据(cat_id) (可能具有最低ID并按cat_id排序)
所以结果应该是:
1 1 test
4 2 4324
3 3 tewt
答案 0 :(得分:6)
使用GROUP BY
:
SELECT MIN(id), cat_id, title FROM table GROUP BY cat_id
答案 1 :(得分:2)
SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT cat_id, MIN(id) id
FROM tableName
GROUP BY cat_id
) b ON a.cat_id = b.cat_id AND
a.id = b.id
ORDER BY a.cat_id