左外连接 - SQL 2005

时间:2010-03-31 22:44:09

标签: outer-join

我以为我知道足够多的SQL,但是我遇到了左外连接的问题。

我有一个费用明细记录,需要通过dept和account_code链接到一个表。

查询看起来像这样:

SELECT Detail.Spend, Budget.BudgetAmt 
FROM detail left outer join budget 
    ON detail.dept = budget.dept 
    AND dept.account_code = budget.account_code

只要存在与连接条件完全匹配的记录,这就很有用。但有时候,没有匹配的预算项目。我想从详细信息表中返回Detail.Spend,其中包含budgetAmt的空值。相反,我根本没有得到这个记录。

当没有匹配时,不是左外连接应该返回左(详细)表吗?当我在这里使用多个标准时,有什么不同的东西吗?

由于

1 个答案:

答案 0 :(得分:0)

LEFT JOIN运算符应该按预期运行。你的例子是整个查询吗?我问,因为有时我忘了在WHERE子句中将连接表放在条件上可能会导致此问题,除非我考虑NULL值。

相关问题