Mysql 如何从数据库中获取唯一记录?

Mysql 如何从数据库中获取唯一记录?,mysql,Mysql,这是我的桌子结构 album id ---- albumname 1 General 3 Sports 9 Activities gallery id --- ablumid--- image_thumb -- image_full 1 1 uploads/1358401616.jpg uploads/thumbs/thumb_1358401616.jpg 2 1 uploads/1358401641.jpg uploads/thumb

这是我的桌子结构

album
id ---- albumname
1   General
3   Sports
9   Activities
gallery
id --- ablumid--- image_thumb  --              image_full
1   1   uploads/1358401616.jpg  uploads/thumbs/thumb_1358401616.jpg
2   1   uploads/1358401641.jpg  uploads/thumbs/thumb_1358401641.jpg
3   1   uploads/1358402071.jpg  uploads/thumbs/thumb_1358402071.jpg
4   3   uploads/1358402334.jpg  uploads/thumbs/thumb_1358402334.jpg
问题是我有太多的图片,一个单一的画廊

这是我的mysql查询

SELECT DISTINCT gl.catid as gallery_cat_id, ab.albumname,gl.imagest 
FROM albums as ab 
INNER JOIN gallery as gl  ON ab.id=gl.catid 
order by ab.albumname ASC
结果如下

gallery_id  albumname   image_full
38      Activities       uploads/thumbs/thumb_1358424428.jpg
41      Activities       uploads/thumbs/thumb_1358424483.jpg
40      Activities       uploads/thumbs/thumb_1358424468.jpg
39      Activities       uploads/thumbs/thumb_1358424446.jpg
查询显示了我在查询中添加的库表中的所有记录,但它不起作用。
有人能告诉我这里遗漏了什么吗?

如果每个相册只需要一个图像(无论是什么),可以使用GROUP BY子句,按相册id分组:

SELECT gl.catid as gallery_cat_id, ab.albumname, gl.imagest 
FROM
  albums as ab 
  INNER JOIN gallery as gl
  ON ab.id=gl.catid 
GROUP BY ab.id
order by ab.albumname ASC

这看起来像是四个独特的行来解释你需要什么。独特的相册名称?查询的预期结果是什么?我需要显示相册。实际上我有三张专辑。我需要显示3个相册内的单一图像相册