ホーム > ORACLE > JOIN

結合

表名

  • 最大30バイト
  • 表の別名はそのSQL文内で有効
  • 表の別名を指定した場合、列は表の別名で修飾する
  • 表の別名にはASを記述すると"エラー"になる。
  • 表の別名を使用すると使用しないでは、使用した方が性能が向上する。
  • 表の別名が短ければ短いほど、メモリーの消費を押さえれる。

ON句

SELECT 列リスト
FROM 表1 [表別名] 
JOIN 表2 [表別名] 
ON 結合条件(表1.列名 = 表2.列名など)
[JOIN 表n [表別名] ]
[{ WHERE | AND 検索条件 }]
  • ON句では結合させる列名のみを指定する。
  • 抽出条件はWHERE句で指定する。
    • 非等価結合
      2つの表の異なる列名を結合する。
    • 自己結合
      1つの表で異なる列名を結合する。

NATURAL JOIN

SELECT 列名
FROM 表1
NATURAL JOIN 表2
  • 結合する表のデータ型と列名がすべて一致している場合利用できる。
  • 結合列のデータ型が異なる場合は、USING句を利用する。
  • USINGとNATURAL JOINは一緒に使えない。
  • 結合列は表の別名で修飾してはいけない。

USING句

SELECT 列名
FROM 表1
JOIN 表2
USING 列名
  • 表1と表2のデータ型がことなる、列名が一致している場合の結合。

LEFT OUTER JOIN

SELECT 列リスト
FROM 表1
LEFT OUTER JOIN 表2
ON 結合条件
  • 結合条件に満たさない行も含むすべての結果を表示する。
    • 表1(全データ) + 表2(結合データ)

RIGHT OUTER JOIN

SELECT 列リスト
FROM 表1
RIGHT OUTER JOIN 表2
ON 結合条件
  • 結合条件に満たさない行も含むすべての結果を表示する。
    • 表1(結合データ) + 表2(全データ)

FULL OUTER JOIN

SELECT 列リスト
FROM 表1
FULL OUTER JOIN 表2
ON 結合条件
  • 両方の表に結合条件が満たす行のすべてを表示する。
    • 表1(結合データ) + 表2(結合データ)

CROSS JOIN

SELECT 列リスト
FROM 表1
CROSS JOIN 表2
  • 結合条件が無効(すべての列が結合される)
このページを共有:
  • このページをはてなブックマークに追加 このページを含むはてなブックマーク
  • このページをlivedoor クリップに追加 このページを含むlivedoor クリップ
  • このページをYahoo!ブックマークに追加
  • このページを@niftyクリップに追加
  • このページをdel.icio.usに追加
  • このページをGoogleブックマークに追加

このページのURL:

TOP