如何加入两个表

时间:2010-10-15 20:22:00

标签: sql-server

表1

Date        v1  
05/01/2010  26          
05/02/2010  31   
05/03/2010  50  

表2

Date        v2 v3  
05/01/2010  42 jkl  
05/02/2010  28 mno  
05/03/2010  12 pqr  
05/04/2010  13 stv  
05/06/2010  48 8965 

如何加入上述两个表格,以便我的结果与下面的内容类似

Date        v1   v2   v3  
05/01/2010  26   42   jkl   
05/02/2010  31   28   mno  
05/03/2010  50   12   pqr  
05/04/2010   0   13   stv  
05/06/2010   0   48   8965 

1 个答案:

答案 0 :(得分:2)

您使用JOIN关键字:

SELECT table2.Date, COALESCE(v1, 0) AS v1, v2, v3
FROM Table2
LEFT JOIN Table1
ON table1.Date = table2.Date

例如,有不同类型的连接:

  • INNER JOIN
  • LEFT OUTER JOIN
  • RIGHT OUTER JOIN
  • FULL OUTER JOIN

如果您未指定所需的连接类型,则默认情况下会获得INNER连接。在这里看来你想要一个LEFT JOIN或一个FULL OUTER JOIN,虽然不清楚你的问题是哪一个。

有关不同类型连接的说明,请参阅此问题: