需要SQL查询以包含NULL

时间:2013-02-01 15:21:33

标签: sql sql-server sql-server-2008

此查询工作正常并创建包含所有必需列的临时表,但我还希望它在第3列为NULL时包含行(当前它只在第3列包含数据时给出行)

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

我尝试过不同的语句,例如AND,OR,这些语句不起作用。由于我是初学者,因此我可能无法正确应用语句。每当我尝试它时,它要么比我应该给我0行或数十万。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

答案很短,可能应该是评论,但.....用INNER JOIN改变你的LEFT JOIN

答案 1 :(得分:1)

即使LEFT中没有匹配项,您也可以使用Table1 JOIN返回Table2的所有行:

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

答案 2 :(得分:0)

您要找的是LEFT JOIN,而不是INNER JOIN

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