Mysql 显示来自不同联接的相同SQL属性
我试图显示3个表中的数据(我自己没有创建它们的方案)。 这些表具有以下简化属性:Mysql 显示来自不同联接的相同SQL属性,mysql,sql,join,Mysql,Sql,Join,我试图显示3个表中的数据(我自己没有创建它们的方案)。 这些表具有以下简化属性: table1: messageID, fromID table2: messageID, toID table3: id, displayName 表3中的id对应于fromID和toID 我想显示messageID的视图,从DisplayName到DisplayName 到目前为止,我得到的是: SELECT table1.messageID as id, displayName as fromDisplayN
table1: messageID, fromID
table2: messageID, toID
table3: id, displayName
表3中的id对应于fromID和toID
我想显示messageID的视图,从DisplayName到DisplayName
到目前为止,我得到的是:
SELECT table1.messageID as id, displayName as fromDisplayName, displayName as toDisplayName
FROM table1
INNER JOIN table2 ON table1.messageID = table2.messageID
INNER JOIN table3 ON table1.fromID = table3.id AND table2.toID = table3.id
显然,displayName在两次使用时都是相同的。如何显示两个不同的显示名
SELECT t1.messageID,
fromName.displayName as fromDisplayName,
toName.displayName as toDisplayName
FROM table1 t1
JOIN table2 t2
ON t1.messageID = t2.messageID
JOIN table3 fromName
ON t1.fromID = fromName.id
JOIN table3 toName
ON t2.toID = toName.id