我有一张下面的表格
id album_id album_name ---- --------- ----------- 1 5 test1 2 5 test1 3 6 test3 4 6 test3 5 NULL test4 6 NULL test4
我想通过album_id使用group编写查询,它将给出以下结果
id album_id album_name ---- --------- ----------- 1 5 test1 3 6 test3 5 NULL test4 6 NULL test4
我已经尝试了但它的分组NULL列也是,我希望所有的行都是NULL并且group_id分组不是null。
我已遵循此link - 但不适合我
由于
答案 0 :(得分:5)
你可以用这个:
SELECT MIN(id) AS id,
album_id,
album_name
FROM T
GROUP BY COALESCE(album_id, id), album_name
ORDER BY album_name;
<强> Example on SQL Fiddle 强>
因此,当album_id
为空时,您还可以按id
分组,确保在album_id
为空的情况下返回所有行。
答案 1 :(得分:-1)
试试这个
SELECT * FROM <tablename>
GROUP BY album_id,id;
答案 2 :(得分:-2)
select * from YourTableName
group by album_id asc
试试这个..