我有两张桌子。画廊和加入。
Gallery
id | title
1 | Dog Gallery
2 | Cat Gallery
Joins
id | gallery_id | picture_id
1 | 1 | 100
2 | 1 | 101
3 | 2 | 56
4 | 1 | 102
我想从图库中获取id,图库标题 - 其中id等于特定ID,但也从图库ID等于特定图库ID的联接中获取所有行。
所以对于上面,如果id为1.我希望来自gallery的图库和picture_ids 100,101和102来自加入。
现在的问题是画廊标题应该来一次。 结果是title = dog gallery picture_id = 100,title = dog gallery picture_id = 101,title = dog gallery picture_id = 102我需要这样的结果 title = dog gallery picture_id = 100,picture_id = 101和picture_id = 102
答案 0 :(得分:1)
您可以使用GROUP_CONCAT将所有ID作为字符串
SELECT G.*, GROUP_CONCAT(DISTINCT P.picture_id ORDER BY P.picture_id DESC SEPARATOR ',')
FROM gallery as G
LEFT JOIN pictures as P ON P.gallery_id = G.id
GROUP BY G.id;