0

这是我的查询,它生成下表

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

(
   SELECT GROUP_CONCAT(  `post_images`.`image_id` SEPARATOR ';')
    FROM  `post_images`
    JOIN user_messages
  ON `post_images`.`messageid` =user_messages.messageid
) AS  `Image_post_id`,
(
   SELECT GROUP_CONCAT(  `post_images`.`small_pic_path` SEPARATOR ';')
    FROM  `post_images`
    JOIN user_messages
  ON `post_images`.`messageid` =user_messages.messageid
) AS Small_pic_path,
(
  SELECT count(*) FROM likes
  WHERE element_id=user_messages.messageid
  )AS Total_Likes

FROM user_messages
WHERE user_messages.userid='1';

sql表

在这里,我想包含 sendby 的详细信息,是 smsusers 表中的 id。我想要来自 smsusers 表的 fname、lname 和 profile_pic 表中的 small_pic_path 的详细信息。如何获取详细信息。

4

1 回答 1

1
SELECT  user_messages.messageid,
        user_messages.message,
        user_messages.sentby,
        user_messages.visibility,
        (
            SELECT  GROUP_CONCAT(  `post_images`.`image_id` SEPARATOR ';')
            FROM    `post_images`
                    JOIN user_messages
                        ON `post_images`.`messageid` =user_messages.messageid
        )   AS  `Image_post_id`,
        (
            SELECT GROUP_CONCAT(  `post_images`.`small_pic_path` SEPARATOR ';')
            FROM  `post_images`
            JOIN user_messages
                ON `post_images`.`messageid` =user_messages.messageid
        ) AS Small_pic_path,
        (
            SELECT count(*) 
            FROM likes
            WHERE element_id=user_messages.messageid
        ) AS Total_Likes, 
        smsusers.*  -- select the columns you want to show
FROM    user_messages
        INNER JOIN smsusers 
        ON user_messages.SENTBY = smsusers.id
WHERE   user_messages.userid= '1';

要进一步了解有关联接的更多信息,请访问以下链接:

于 2013-02-23T15:06:32.673 回答