0
Left Outer JoinのON句は、実際にどのテーブルが左か右であるかを実際に決定するとの通知を受けました。私がこれを見ても、ON句でキーを左右に動かすと、実際に結果に違いは見られません。私はテクテットについても見てきましたが、私はこれに関する文書を見つけることができません。SQL Left Outer Join On Clause Placement
ON句にキーを配置すると、実際に左右どちらのテーブルが決定され、結果セットが異なるのでしょうか?例えば
:
SELECT *
FROM Product p
LEFT OUTER JOIN Review r ON p.ProductKey = r.ProductKey
SELECT *
FROM Product p
LEFT OUTER JOIN Review r ON r.ProductKey = p.ProductKey
しかし、一部のDBMSのパフォーマンス要因になる可能性があります。 – Sanka
@Sanka:現代のDBMSはどこに違いがあるのでしょうか –
間違っていると伝えられています。あなたの2つのクエリは同等です - ANSI標準なので、結果セットは同じです。 2つのクエリに対して異なる計画を立てることができるSQLコンパイラを想像するのは難しいです。 –