■90144 / ) |
JOINの結合条件の書式について |
□投稿者/ 粗品 (4回)-(2019/02/12(Tue) 14:05:33)
|
分類:[データベース全般]
クエリの構文についてですが、大抵の説明サイト等でよくある外部結合の例文として
SELECT * FROM A LEFT OUTER JOIN B ON A.xxx = B.xxx WHERE A.xxx < 100
というのがありますが、LEFT の ON以降の条件式の左辺、右辺のルールとかあるのでしょうか?
文法としては(A.xxx = B.xxx)でも逆の(B.xxx = A.xxx)でも通るのですが、 どのサイトも(A=B)形式で表示しています
「メインテーブルのこの項目が外部テーブルのこの項目に繋がる」という考え方なのかとも思うのですが
ただこのBテーブルの条件に区分が1の時、を入れるとしたらこの考え方だと LEFT OUTER JOIN B ON A.xxx = B.xxx AND B.区分 = 1 となり、「B.」が左辺右辺両方に出ることになります。
それなら最初から「このテーブルのこの項目の対になるのはあのテーブルのこの項目です」形式の LEFT OUTER JOIN B ON B.xxx = A.xxx であれば定数で判断する条件があってもなくても 「左辺はこのテーブルの項目、右辺はそれに対する条件」 という一定した書き方が成立すると思うのです
コレに言及したサイトが見つけられなかったので質問しました
|
|