`

SQL MERGE 语句

SQL 
阅读更多
SQL中的MERGE语句,是对两个表进行操作,可以看做是UPDATE和INSERT的集合使用,前提是目标表可以插入和更新记录。

EXAMPLES:
CREATE TABLE test_a (part_id number, part_count number);
INSERT INTO test_a VALUES(3, 5);
INSERT INTO test_a VALUES(4, 8);

CREATE TABLE test_b (part_id number, part_count number);
INSERT INTO test_b VALUES(3, 2);
INSERT INTO test_b VALUES(6, 7);

MERGE INTO test_a a
    USING test_b b
    ON (a.part_id = b.part_id)
    WHEN MATCHED THEN UPDATE SET a.part_count = a.part_count + b.part_count
    WHEN NOT MATCHED THEN INSERT (a.part_id, a.part_count)
    VALUES (b.part_id, b.part_count); 
    
SELECT * FROM test_a;
   PART_ID PART_COUNT
---------- ----------
         3          7
         4          8
         6          7
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics