0

在我的表 1 中,它可能在对应记录的地址列中有一个空条目,或者在表 2 中没有匹配条目。我想显示表 1 中的所有记录,但也显示表 2 中的相应条目。我的结果是我想要实现的。

Table 1         
ID  First   Last    
1   John    Smith   
2   Bob     Long    
3   Bill    Davis   
4   Sam     Bird    
5   Tom     Fenton  
6   Mary    Willis  

Table 2         
RefID   ID  Address 
1       1   123 Main    
2       2   555 Center  
3       3   626 Smith   
4       4   412 Walnut  
5       1       
6       2   555 Center  
7       3       
8       4   412 Walnut  

Result          
Id  First   Last    Address
1   John    Smith   123 Main
2   Bob     Long    555 Center
3   Bill    Davis   626 Smith
4   Sam     Bird    412 Walnut
5   Tom     Fenton  
6   Mary    Willis  
4

2 回答 2

1

为此,您需要一个外部联接:

SELECT * FROM Table1 t1 LEFT OUTER JOIN Table2 t2 ON t1.ID = t2.RefID
于 2013-10-22T19:26:03.563 回答
1

你如何连接这两个表?如果表 2 有超过 1 个匹配的地址,你想如何显示它们?请在您的问题中澄清。

这是基于我的假设的查询。

SELECT
  ID, First, Last,
  Address =  (SELECT MAX(Address) FROM Table2 t2 WHERE t1.ID = t2.ID)
FROM Table1 t1
于 2013-10-22T20:03:14.187 回答