我正在尝试用php和mysql制作相册系统。 我有这个代码列出所有相册:
SELECT albums.*, count(pictures.id) AS countpic
FROM albums
LEFT JOIN pictures ON (albums.id=pictures.album_id)
GROUP BY albums.id
ORDER BY albums.date DESC");
我想列出带有照片缩略图的相册标题(thumb_id si写在表格图片中)以及分配给每张专辑的所有照片的数量。
您不知道如何选择thumb_id以及使用一个选择的相册中所有图片的数量吗?
由于
答案 0 :(得分:3)
将group_concat(pictures.thumb_id)
添加到选择列表中是否可以满足您的需求?
答案 1 :(得分:2)
如果每张专辑都有一张is_thumb = 1的单张图片,这将有效。
SELECT
albums.*,
count(pictures.id) AS countpic,
group_concat(pictures.thumb_id) ids,
group_concat(case when picture.is_thumb then pictures.thumb_id else '' end separator '') thumb
FROM albums
LEFT JOIN pictures ON (albums.id=pictures.album_id)
GROUP BY albums.id
ORDER BY albums.date DESC");