JOIN の結合条件の対応表

FROM 句の JOIN を、表と条件の対応表にして読み解く。

SELECT 文を貼り付けると、FROM 句の JOIN を 1 行ずつの表にします。結合の種類・結合先の表と別名・ON / USING / NATURAL の条件を並べ、条件の抜けや書き方の注意を知らせます。入力はブラウザの外へ送信しません。

ツールを使う 入力例と結果

SELECT 文を貼り付けて JOIN の対応表を作る

入力した内容は送信されません。貼り付けた文字や選んだファイルは、お使いのブラウザの中だけで処理します。本サイトのサーバーや第三者へ送信・保存しません(通信を禁止する設定でページを配信しています)。

結果

エラー 0 件・警告 0 件・情報 0 件

指摘(エラー・警告・情報)

指摘はありません。

表の数2 個
結合の数1 個
外部結合の数0 個

JOIN の対応表

JOIN の対応表
#結合の種類表(別名)条件の種類条件
1(最初の表)orders AS o--
2INNER JOINusers AS uONu.id = o.user_id

初期表示は入力例「内部結合と ON の条件」の結果です。入力を変えるとその場で処理し直します。判定の根拠は仕様と根拠にまとめています。

ご利用にあたって

  • 結果は字句の読み取りにもとづく確認で、実際のデータベースでの解釈を保証するものではありません。
  • ドキュメントは PostgreSQL License で公開されています。このサイトはその内容を要約して参照しており、転載はしていません。

使い方

  1. 調べたい SELECT 文を入力欄に貼り付けます。
  2. 表の「結合の種類」「表(別名)」「条件」を上から順に読み、意図した表同士が結ばれているかを確かめます。
  3. 指摘の欄で、条件の抜けや NATURAL・USING の注意を確認して SQL を直します。

入力例と結果

代表的な入力・境界の入力・壊れた入力の例です。例ごとに入力・出力・指摘と、その結果になる理由(検算)を載せています。

入力例と結果の一覧
入力例結果
内部結合と ON の条件エラー 0 件・警告 0 件・情報 0 件
左外部結合と USINGエラー 0 件・警告 0 件・情報 1 件
NATURAL JOIN とカンマ区切りエラー 0 件・警告 0 件・情報 2 件
外部結合と WHERE の同居エラー 0 件・警告 0 件・情報 1 件
条件を書き忘れた JOINエラー 1 件・警告 0 件・情報 0 件

このツールでできないこと(制約)

よくある質問

JOIN とだけ書くと何の結合になりますか?

INNER JOIN になります。INNER も OUTER も省略でき、INNER が既定です(7.2.1.1 節)。表では INNER JOIN と表示します。

USING (id) は ON a.id = b.id と同じですか?

結ぶ条件は同じですが、USING では結果に id が 1 列だけ出る点が違います(7.2.1.1 節)。ON では a.id と b.id の 2 列が出ます。

貼り付けた SQL はどこかに送られますか?

送られません。処理はお使いのブラウザの中だけで行い、ページは通信を禁止する設定(CSP の connect-src)で配信しています。