我有四个mysql表,我想对它们执行联接查询以显示所有四个表中的选定数据。
table1 `t1key, t1a t1b t1c t1d`
table2 `t2key, t2a t2b t2c t2d`
table3 `t3key t3a t3b t3c t3d`
table4 `t4key, t4a t4b t4c t4d`
我想展示
t1a,t1c,t2a,t2b,t2d,t3a,t3b,t4b,t4c,t4d
我确实这样查询:
SELECT t1a, t1c, t2a, t2b, t2d, t3a, t3b, t4b, t4c, t4d FROM table1
LEFT OUTER JOIN table2 ON table1.t1key=table2.t2key
LEFT OUTER JOIN table3 ON table2.t2key=table3.t3key
LEFT OUTER JOIN table4 ON table3.t3key=table4.t4key
但是,我只看到来自table1,table2和table3的值。 table4的值显示为空。我检查了文档,但仍然无法弄清楚。
最佳答案
由于您使用的是左外部联接,因此如果返回的结果为NULL,则条件为:
table3.t3key = table4.t4key
没有结果,简而言之,table4中没有与table3匹配的行。
关于mysql - 如何加入四个mysql表?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35640516/