首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Joins -从一个表中获取行,然后获取另一个表中匹配的所有行?但是第一个表匹配的行不能重复

Joins -从一个表中获取行,然后获取另一个表中匹配的所有行?但是第一个表匹配的行不能重复
EN

Stack Overflow用户
提问于 2016-09-22 20:39:35
回答 1查看 23关注 0票数 1

我有两张桌子。画廊和联队。

代码语言:javascript
复制
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,我想要画廊中的狗画廊和joins中的picture_ids 100,101和102。

现在的问题是画廊的标题应该出现一次。结果是title=dog画廊picture_id=100,title=dog画廊picture_id=101,title=dog画廊picture_id=102我需要像这样的结果title=dog画廊picture_id=100,picture_id=101和picture_id=102

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-22 20:44:53

您可以使用GROUP_CONCAT将所有ID都作为字符串

代码语言:javascript
复制
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;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39639329

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档