- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:sql(left join)の結合条件のルール)
SQLのleft join結合条件について
このQ&Aのポイント
- left joinを使用したテーブルの結合条件は、テーブルAとテーブルBの中にあるカラムを比較する必要があります。
- 結合条件には、テーブルAとテーブルBの中に実際に存在するカラムのみを使用することができます。
- left joinの結合条件は、テーブルAの中のカラムとテーブルBの中のカラムを比較するため、両方のテーブルに存在しないカラムは使用することができません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> (1)二つのテーブルの両方に存在するカラムの比較が全くなくても、式自体が > 成り立っていたらOKという事ですか? > > それとも、 > > (2)最低1つは、(2つのテーブルに存在するカラムの比較)が必要で、 > それ以外はand等で、条件式として成り立つものならなんでもOKという意味ですか? 実際に実行してみましたか? SELECT * FROM Table_A LEFT JOIN Table_B ON 1 = 1 といった書き方も可能ですから、(1)が正解です。
その他の回答 (1)
- Picosoft
- ベストアンサー率70% (274/391)
回答No.1
条件式として成り立つものであればどのように書いても問題ありません。
質問者
お礼
早速のご回答ありがとうございます。
質問者
補足
ご回答に関して確認ですが、(くどくてすいません。心配なもので。) 『条件式として成り立つもの』とは、 on以下の条件式に、 (1)二つのテーブルの両方に存在するカラムの比較が全くなくても、式自体が 成り立っていたらOKという事ですか? それとも、 (2)最低1つは、(2つのテーブルに存在するカラムの比較)が必要で、 それ以外はand等で、条件式として成り立つものならなんでもOKという意味ですか? 私にとって上記が重要なので、確認をしていただければ幸いです。 よろしくお願いします。
お礼
>実際に実行してみましたか? もともとは複雑な条件式に悩まされ、散々実験してみましたが、 どうにも結果に自信が持てず質問させていただきました。 いずれにしても確かな回答にたどり着き、安心しました。 本当にありがとうございます。