我有两个桌子。这些不是它们,而是相同的原理:
Table:One (artists)
--------------
id (Primary Key)
name
best genre
Table:Two (artist teams)
-------------
id1 (Foreign Key)
id2 (Foreign Key)
我想选择喜欢的类型相同的艺术家团队。
到目前为止,我的工作是
SELECT *
FROM Two INNER JOIN One
WHERE ( ).
我对放在WHERE语句中的内容感到困惑。 我不知道如何将艺术家流派的价值相互比较!
pseudo code for WHERE:
retrieve id#1's favourite genre
retrieve id#2's favourite genre
compare them
if equal display the related entity from table Two
我已经搜索了一段时间,正在寻找解决方案,但找不到任何东西 就像这样,我认为这可能是一种我可能会错过的语法。 感谢您的帮助!
答案 0 :(得分:0)
您需要多次加入“艺术家”表:
select t.*, a1.genre
from teams t join
artists a1
on t.id1 = a1.id join
artists a2
on t.id2 = a2.id and a2.genre = a1.genre;