MYSQL连接第三个表

MYSQL连接第三个表,mysql,sql,Mysql,Sql,我有以下MYSQL SELECT T2.name as username, T2.id as userid, T2.lastactivity as lastactivity, T2.photo as avatar FROM exchange AS T2 INNER JOIN ( SELECT (CASE WHEN `buddy`.`penpalA` = 887 THEN `buddy`.`penpalB`

我有以下MYSQL

SELECT T2.name as username, T2.id as userid, 
       T2.lastactivity as lastactivity, T2.photo as avatar
FROM exchange AS T2
  INNER JOIN 
    ( SELECT (CASE WHEN `buddy`.`penpalA` = 887 
                     THEN `buddy`.`penpalB` 
                     ELSE `buddy`.`penpalA` 
              END) AS 'friend'
      FROM `buddy`
      WHERE status = 1 AND `penpalA` = 887
         OR `penpalB` = 887
    ) AS _Temp 
    ON _Temp.friend = T2.`id`
如何向其中添加另一个表以获取其他详细信息,其中uu Temp.friend和now T3.userid是共同的分母

请尝试以下方法:

   SELECT T2.name as username, T2.id as userid, 
           T2.lastactivity as lastactivity, T2.photo as avatar,T3.*
    FROM exchange AS T2
      INNER JOIN 
        ( SELECT (CASE WHEN `buddy`.`penpalA` = 887 
                         THEN `buddy`.`penpalB` 
                         ELSE `buddy`.`penpalA` 
                  END) AS 'friend'
          FROM `buddy`
          WHERE status = 1 AND `penpalA` = 887
             OR `penpalB` = 887
        ) AS _Temp 
        ON _Temp.friend = T2.`id`
     LEFT JOIN details T3 ON _Temp.friend=T3.UserId

祝贺所有这些都有问题吗?@JakeStainer那么你的问题是什么?我如何向联接中添加另一个表,并从另一个与用户ID链接的表中获取详细信息(不相关):我认为
where
可能需要括号:
status=1和(penpalA=887或penpalB=887)
hi,我只在T3中实际存在用户ID的地方得到结果,我需要它,这样如果T3中没有任何内容,那么它只会显示blanksI将最终连接更改为左连接,这应该满足您的需要。。。