我以为我知道足够多的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的空值。相反,我根本没有得到这个记录。
当没有匹配时,不是左外连接应该返回左(详细)表吗?当我在这里使用多个标准时,有什么不同的东西吗?
由于
答案 0 :(得分:0)
LEFT JOIN运算符应该按预期运行。你的例子是整个查询吗?我问,因为有时我忘了在WHERE子句中将连接表放在条件上可能会导致此问题,除非我考虑NULL值。