0

此查询完美运行,并创建了包含所有必要列的临时表,但我也希望它在第 3 列时包含行NULL(目前它只在第 3 列中有数据时才给我行)。

  SELECT column1
        ,column2
        ,column3
        ,column4
        ,column5
  FROM Table1 
  INNER JOIN Table2
  ON table1.column3 = table2.column3

我尝试了不同的语句,例如 AND、OR,但都不起作用。由于我是初学者,我可能只是没有正确应用该语句。每当我尝试某些东西时,它要么给我 0 行,要么比它应该给我的行数多数十万。

感谢您的帮助。

4

3 回答 3

1

即使没有匹配项,您也可以使用LEFTJOIN 从 中返回所有行:Table1Table2

SELECT column1
    ,column2
    ,column3
    ,column4
    ,column5
FROM Table1 
LEFT JOIN Table2
ON table1.column3 = table2.column3
于 2013-02-01T15:28:02.687 回答
1

这是一个如此简短的答案,它可能应该是一个评论,但是.....改变你INNER JOINLEFT JOIN

于 2013-02-01T15:24:16.440 回答
0

您正在寻找的是 aLEFT JOIN而不是您的INNER JOIN

  SELECT column1
        ,column2
        ,column3
        ,column4
        ,column5
  FROM Table1 
  LEFT JOIN Table2
  ON table1.column3 = table2.column3
于 2013-02-01T15:24:37.187 回答