1

我想根据 messageid 对 image_id 和 small_pic_path 路径进行 group_concate。但是组连接显示所有 image_id 和第一个 messageid 的路径

如何解决这个问题

没有 group_concate 它可以正常工作

SELECT user_messages.messageid,user_messages.message,
user_messages.sentby,user_messages.visibility,

post_images.image_id,
post_images.small_pic_path

FROM user_messages
      INNER JOIN smsusers ON
        user_messages.SENTBY = smsusers.id
 INNER JOIN profile_pic ON
 user_messages.SENTBY = profile_pic.userid
left outer JOIN post_images ON
user_messages.messageid=post_images.messageid
WHERE user_messages.userid='1';

显示正确的输出演示是

我想根据 user_messages 的 messageid 对 post 图像的 group_concate image_id、small_pic_path 进行分组,其中无法正常工作

    SELECT user_messages.messageid,user_messages.message,
user_messages.sentby,user_messages.visibility,

GROUP_CONCAT( post_images.image_id SEPARATOR ';')
as Image_id,
GROUP_CONCAT( post_images.small_pic_path SEPARATOR ';')
as Image_path

FROM user_messages
      INNER JOIN smsusers ON
        user_messages.SENTBY = smsusers.id
 left outer JOIN post_images ON
user_messages.messageid=post_images.messageid
WHERE user_messages.userid='1';

演示是

4

1 回答 1

0

你缺少GROUP BY条款,

GROUP BY  user_messages.messageid,
          user_messages.message,
          user_messages.sentby,
          user_messages.visibility
于 2013-02-25T05:35:47.963 回答