MYSQL连接第三个表
我有以下MYSQLMYSQL连接第三个表,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`
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将最终连接更改为左连接,这应该满足您的需要。。。