1

テーブルから別のテーブルにデータを挿入しようとしていますが、ソース値が宛先にあるかどうかを最初に確認できるクエリを探しています。存在する場合はロードしないでください。

ソースに以下があるとしましょう

ID|EMAIL|COUNTRY|PHONE
1|s@s.com|US|1212

上記の電子メールが送信先テーブルに存在するかどうかを確認し、存在しない場合はロードします。

あなたの答えを待っています。

4

2 に答える 2

2

MERGEステートメントを使用できます

MERGE table2 AS target
USING table1 AS source
    ON (target.email = source.email)  
WHEN NOT MATCHED BY TARGET 
    THEN INSERT (
        email, 
        country, 
        Phone
    ) VALUES (
        source.email, 
        source.country, 
        source.phone
    );
于 2013-03-12T11:23:23.327 に答える
1

シンプルジョインも仕事をします

INSERT INTO <TblDestination>
SELECT src.Email
FROM <TblSource> src
    LEFT JOIN <TblDestination> dst ON src.Email = dst.Email
WHERE dst.Email IS NULL
于 2013-03-12T11:27:52.287 に答える