2009-02-27 13 views

答えて

2

にあなたに感謝助けてください同じ主キーを共有します。

insert TableB 
select A.* 
from TableA A 
left join TableB B ON A.pk = B.pk 
where B.pk is null 
2

これがサンボの答えの

INSERT INTO TableB 
SELECT * FROM TableA 
EXCEPT 
SELECT * FROM TableB 
0

代替フォームを動作するはずです。

INSERT TableB 
SELECT * 
FROM TableA A 
WHERE NOT EXISTS (
    SELECT * 
    FROM TableB B 
    WHERE A.pk = B.pk) 
+0

これは理由がありません。これは完璧にうまくいきます...私はテーブルを比較するときLEFT JOINのアプローチを好むが、これは間違っていない... – MatBailie

+0

ダウンマーカーにもかかわらず+1 ... – MatBailie

+0

なぜあなたにデモ。実際にはそれは著しく異なっているかもしれませんが(それが良いか悪いか)、それは非常に一般的なパターンです。 – MikeW

関連する問題