sql >> データベース >  >> RDS >> Oracle

結合条件 ON vs WHERE

    さて、あなたが「同等」と呼ぶものは、外部結合と同等ではありません。例として左結合を見てみましょう。

    JOIN の条件:

    SELECT * FROM Customers c
    LEFT JOIN CustomerAccounts ca ON ca.CustomerID = c.CustomerID AND c.State = 'NY'
    LEFT JOIN Accounts a ON ca.AccountID = a.AccountID AND a.Status = 1
    

    対 WHERE:

    SELECT * FROM Customers c
    LEFT JOIN CustomerAccounts ca ON ca.CustomerID = c.CustomerID
    LEFT JOIN Accounts a ON ca.AccountID = a.AccountID
    WHERE c.State = 'NY'
    AND a.Status = 1
    

    条件を WHERE 句に入れると、効果的に結合が INNER になります。 結合、WHERE 句は行 filter であるため 後に適用されます 結合が行われました。



    1. 疑問符として漢字を保存するCodeigintermysql

    2. メールのPHP添付ファイルが空です

    3. Oracle10GXE用のJDBCドライバー

    4. MySQLには、Oracleのレベルのような機能があります。