用条件连接多个表

时间:2013-04-25 23:29:37

标签: mysql join

问候并感谢您查看我的问题。我在这里作为一个菜鸟站着:)我有3个表=>

First_Table
First_Table_id  |content
----------
1   |aaa
2   |bbb
3   |ccc
4   |ddd

Second_Table
Second_Table_id  |First_Table_id
----------
1   |1
2   |2
3   |3
4   |4

Third_Table
Third_Table_id  |First_Table_id
----------
1   |1
2   |2
3   |3

我的问题是,我需要显示来自First_Table => ID的内容,其中填写了Second_Table => First_Table_id但未填写Third_Table => First_Table_id。我试图尝试这个=>

SELECT * FROM First_Table
LEFT JOIN Second_Table ON Second_Table.First_Table_id = First_Table.id
LEFT JOIN Third_Table ON Third_Table_id WHERE Third_Table.First_Table_id != First_Table.id

但是那个查询什么也没给我。还有其他方法可以解决我的问题吗?谢谢:)

1 个答案:

答案 0 :(得分:0)

使用子选择:

SELECT * FROM First_Table
JOIN Second_Table ON First_Table.id = Second_Table.First_Table_id
WHERE First_Table.id NOT IN (SELECT Third_Table.First_Table_id FROM Third_Table)

PS:我使用的是JOIN而不是LEFT JOIN,因为你说你希望来自First_Table的内容在Second_Table中显示为外键

相关问题