Sql连接多个表

时间:2017-05-15 13:16:33

标签: sql

我有一张这样的表

mNumber     DateTime                  
3005877639  22/03/2017 12:04:55 PM
3459145987  17/04/2017 10:32:00 AM
3334386694  18/04/2017 4:37:10 PM

我在3个不同的表中拥有mNumber的所有权信息,即table1,table2和table3,使得table1拥有3005877639的所有权信息,table2具有3459145987,而表3具有关于3334386694的信息。 现在我想检索每个数字的所有权信息并将其与上表联系起来。由于某种原因,我无法合并所有权信息表。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

尝试如下:

select * from table1 t1 inner join table2 t2 on t1.mNumber=t2.mNumber_column_name join table3 t3 on t1.mNumber=t3.mNumber_column_name where 1 //if you want you can more condition

如果您想了解有关加入检查here

的更多信息

答案 1 :(得分:-1)

好的,我明白了。就像xQbert评论的那样,我简单地将所有3个表“联合起来”并将其用作左外连接中的右表,即

    Select a.*, b.Name,b.address from TableX as a Left Outer Join 
(Select * fom Table1 union all Select * from Table2 
union all Select * from Table3) as b on a.mNumber = b.mNumber

并且有效。

还值得一提的是,嵌套连接在这种情况下不起作用。 感谢所有回复的人。