我的数据库中有2条记录,如下所示:
id | name | photos
1 | test name | http://www.photo.com/1.jpg
2 | test name | null
这两个记录是相同的,除了1有一张照片而另一张没有。我可以使用以下查询进行选择时删除它:
SELECT * FROM table WHERE name = 'test name' GROUP BY name;
这给了我一条单曲,但我想用照片返回一行。我可以对此查询做些什么来实现这一目标?
注意:我不能假设至少有一个副本会有照片。有时它们都可能为空,所以我不能使用:
SELECT * FROM table WHERE name = 'test name' AND photos IS NOT NULL GROUP BY name;
答案 0 :(得分:1)
SELECT name, max(photos) as photos
FROM table
GROUP BY name;