• ベストアンサー

MySQL5でキーがないテーブルの結合はできますか?

MySQL5なのでサブクエリが使えるのですが、 A x Bのレコードを返したいのですがSQLで可能でしょうか? ■テーブルA a_id b_id 1 1 1 2 ■テーブルB c_id 1 2 ■期待する結果 a_id b_id c_id 1 1 1 1 2 2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

#1です。 リレーショナルDBの世界では、「A × B」は「直積」という意味で使うことがあります。 これはテーブルAとテーブルBの結合を、すべての組み合わせで行なう意味であり、テーブルA、テーブルBにそれぞれ2行存在するなら、結果は4行になります。結合条件を指定せずにジョインを行なえば、直積することになります。

php4
質問者

お礼

4年くらい前に、聞いた直積の意味がやっとわかりました。 結合条件を指定せずにジョインを行い希望の事が実現できました。 ありがとうございます。

その他の回答 (1)

回答No.1

>MySQL5なのでサブクエリが使えるのですが、 >A x Bのレコードを返したいのですがSQLで可能でしょうか? 「A x B」とはどういう意味で、サブクエリとどういう関連があるのでしょうか? 提示された例だけなら、 select * from テーブルA,テーブルB where b_id=c_id で、できてしまいます。 質問のタイトル、前文と、内容が一致していないように感じますが?

php4
質問者

お礼

つっこみありがとうございます。 確かにサブクエリーとは何の関係なかったです(^^;) すみません。 直積のSQL自体、4年も遭遇していなかったので、 とんちんかんな内容を書いてしまいました(汗)

関連するQ&A