重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

お疲れ様です。
いつもお世話になっております。

insert into table_a (a,b) select a,b from table_b;
table_aにはプライマリ、ユニークともに指定無し。

この構文があったとき、table_aには何件かtable_bのデータが既に入っており、データが被ったときは、無視したいのです。

プライマリなどが指定されている場合、ignoreが使えますが、
槽ではないときに効率の良い解決方法はないでしょうか?

よろしくお願いします。

A 回答 (2件)

insert into table_a (a,b) select distinct a,b from table_b where not exists (select * from table_a where table_b.a = table_a.a and table_b.b = table_a.b);



じゃだめですか?
    • good
    • 0

っていうか、その運用方法ならユニークを指定してignore into


するのがまっとうなやり方に見受けられますが・・・
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す