【发布时间】:2011-04-22 13:45:58
【问题描述】:
我一直试图找出一种不同的方式来完成这个网站上另一个问题的任务,但我想也许我把它弄得太难了。
这是我所拥有的: 具有 ImageID、ImageName、GalleryID 的表 另一个包含评论、作者、日期、ImageID 的表
我要做的是进行查询,在其中找到所有具有 galleryID=42 的图像。此外,我想获取与每张图片关联的所有 cmets(通过 ImageID)并将它们连接成一个值。例如:
ImageID: 1234, ImageName: IMG425, GalleryID: 42, Comments: Cool!|||John Smith|||2010-09-06~~拍得好!|||Richard Clark|||2010-10-01 ~~我记得这次跑步。|||Susan Edwards|||2010-10-04
我需要连接 Comments 表中针对每个图像的所有结果并将它们作为单个值放入,然后我可以通过 PHP 在我的页面正文中解析它们。
【问题讨论】:
-
你能和我们分享一些代码和SQL吗?
-
SELECT GalleryData.ID, GalleryData.FileName, GalleryData.GalleryID, GalleryData.Description, Galleries.GalleryName, Galleries.GalleryFolder, Comments.ID, Comments.
Comment, Comments.CommentAuthor, Comments.CommentDate FROM GalleryData INNER JOIN Galleries ON GalleryData.GalleryID = Galleries.GalleryID LEFT JOIN Comments ON GalleryData.ID = Comments.ID 当有超过 1 条与图像相关联的评论时,这会产生重复的图像记录。
标签: php mysql subquery concatenation