SQL将DISTINCT列和逗号分隔列与另一个表组合成列表

时间:2018-02-09 01:09:15

标签: mysql sql postgresql relational-database

我试图以逗号分隔的索引顺序获取所有帖子及其所有图片。所以idx可能是0,1或2意味着一个帖子最多可以有三张图片。

我的表格是Posts和Post_Pictures

发布

postId: (PRIMARY KEY)
fullName: (VARCHAR)

Post_Pictures

postPictureId (PRIMARY KEY)
image (STRING)
idx (INT)
post_id (FOREIGN KEY)

对于属于同一postId的图像,最终查询应该如下所示:

postId | fullName |            imagesInOrder         | 

   1       Sam       (Img Url), (Img Url), (Img Url)

这是我当前的查询,它只返回一个帖子而不是所有帖子,并将每个图像连接成一列而不是仅包含属于该帖子的图像:

SELECT p。*,GROUP_CONCAT(pp.image SEPARATOR',')作为照片从帖子作为p LEFT JOIN Post_Pictures as pp ON p。postId = pp。post_id;

0 个答案:

没有答案