0

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

これは、結合条件に完全に一致するレコードがある限り、うまく機能します。ただし、一致する予算項目がない場合もあります。詳細テーブルから、budgetAmtのnullを含むDetail.Spendを取得したいと思います。代わりに、私はこのレコードをまったく取得しません。

一致するものがない場合、Left Outer Joinは左側(詳細)テーブルを返すことになっていますか?私がここで行っているように、複数の基準が使用されている場合、何か違いはありますか?

ありがとう

4

1 に答える 1

0

LEFT JOIN 演算子は、期待どおりに動作するはずです。あなたの例はクエリ全体ですか?NULL 値を考慮しない限り、結合されたテーブルの WHERE 句に条件を設定すると、この問題が発生する可能性が高いことを時々忘れてしまうので、質問します。

于 2010-03-31T22:50:59.163 に答える