- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:mySQLの内部結合について)
mySQLの内部結合について
このQ&Aのポイント
- mySQLを使って、テーブル同士をINNER JOINして結果を取得して、さらに別の処理を行う方法について質問します。
- 具体的なSQL文を示しながら、結合と絞り込みの処理を説明し、既存のテーブルのように結合後のデータを扱いたい場合についても説明します。
- 質問文章の要点として、mySQLの内部結合によってテーブルを結合し、その結果に対してさらに絞り込みの処理を行いたい場合の方法と、結合後のデータの扱い方について質問しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
SELECT cmaster.comic_id,tags,title FROM mysql.comic_tag as ctag INNER JOIN mysql.comicmaster as cmaster ON ctag.comic_id = cmaster.comic_id SELECT cmaster.comic_id,tags,title FROM mysql.comic_tag as ctag WHERE tags = 'aa' 2つのSQL文を見比べてもらうとわかる(というか文法書に書いてあること)のですが、 Inner join テーブル1 on 条件1 ・・・from テーブル where 条件2 Inner join テーブル on 条件1は、from句のテーブルと書いた中に書きます。 だから、 ・・・from テーブル Inner join テーブル1 on 条件1 where 条件2 と書けばいいことが理解してもらえるかな。 ちなみに Inner join テーブル1 on 条件1 の条件1をandでつなぐこともできるので ON ctag.comic_id = cmaster.comic_id AND tags = 'aa' と書いても動くかも。 でもあとでみたときに分からなくなるので、お薦めしません!!! (あくまで onの後ろはテーブルを結合する条件だけにするべき)
その他の回答 (1)
- 原沢 信道(@nharasawa)
- ベストアンサー率53% (90/168)
回答No.1
文法上はWHEREの前のANDは不要です。
質問者
お礼
そうだったんですね。お返事ありがとうございます。
お礼
詳しく書いていただいて恐縮です。 おかげさまでソースも動くようになりました。ありがとうございます。