• ベストアンサー

結合した結果を別テーブルにいれるには

mysqlで、 結合した結果を別テーブルにいれるには、どうしたらよいでしょうか。 aと bを結合させて、 cへいれる。 inner join、と insert を組み合わせるような気がするのですが、よくわかりません。

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

  • ベストアンサー
  • Charley
  • ベストアンサー率40% (2/5)
回答No.2

すみません。先ほどのはACCESSの場合で回答しました。 INSERT INTO c SELECT a.a01, a.a02, b.b01, b.b02 FROM a INNER JOIN b ON a.a01 = b.b01 これはどうですか?

tol
質問者

お礼

うまくいきました。 実際のデータベースでも、何とかうまく出来そうです。 どうもありがとうございました。

その他の回答 (2)

  • stork
  • ベストアンサー率34% (97/285)
回答No.3

mySQLは、知らないんですが、下の文はデータベース固有の部分はないので大丈夫だと思います。 INSERT INTO c(col1,col2,...) SELECT a.col1,a.col2,.... FROM a INNER JOIN b ON a.col1 = b.col1

  • Charley
  • ベストアンサー率40% (2/5)
回答No.1

テーブルaとテーブルbを、a01とb01で結合し、 テーブルaのフィールドa01,a02と テーブルbのフィールドb01,b02を SELECTした結果を テーブルcに入れる場合です。 SELECT a.a01, a.a02, b.b01, b.b02 INTO c FROM a INNER JOIN b ON a.a01 = b.b01 これでうまくいきますか?

tol
質問者

補足

だめでした。 You have an error in your SQL syntax とエラーが出てしまいます。 INTO c の部分を外すと、ちゃんと表示されます。 c のテーブルへの挿入がうまくいかないみたいです。

関連するQ&A