• ベストアンサー

あるテーブルの内容を基準にして違うテーブルを更新するSQL文

教えて下さい。 あるテーブルに下記の内容があります。 ID│名称 ─┼─── 1│花 2│木 3│水 もうひとつのテーブルには、 ID│名称 ─┼─── 1│海 3│水 4│空 となっています。 最初のテーブルの全レコードを対象に、最初のテーブルのIDと同じ値がもうひとつの テーブルにある場合、もうひとつのテーブルをUPDATEし、存在しなければINSERTしたい です。 結果を ID│名称 ─┼─── 1|花 2│木 3│水 4│空 を期待しています。 このようにするSQL文を教えていただけませんでしょうか。 よろしくお願いします。

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

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.2

良く似た質問が過去に有りました。 回答2がぴったりだと思います。 参考にしてください。

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=604829
asaichi
質問者

お礼

うっかりしていました。 ご指摘ありがとうございます。 大ヒットです。

その他の回答 (1)

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ。 お使いになられているRDBMS によって、書き方は 変わってきますが、Oracle (9i) であれば MERGE 文が使えたと思いますょ。

asaichi
質問者

お礼

DBが記載していませんでした。 すみません。 DBは、PostgreSQLです。 ORACLE9iの時は参考にさせて頂きます。

関連するQ&A