最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQL中merge into用法詳解

 更新時間:2025年04月10日 09:33:33   作者:CtrlC V型程序員  
merge into 用法它是一種常見的SQL語法,用于更新,插入和刪除表中的數(shù)據(jù),本文給大家介紹SQL中merge into用法,感興趣的朋友一起看看吧

從備份表中更新字段到正式表中,使用 UPDATE 批量更新大量的數(shù)據(jù),會出現(xiàn)效率低下,有時候甚至卡死的情況,后面通過使用 MERGE INTO 代替 UPDATE 執(zhí)行批量更新,會提升執(zhí)行效率。

MERGE INTO語法如下:

MERGE INTO table_name alias1 
USING (table|view|sub_query) alias2
ON (join condition) 
WHEN MATCHED THEN 
    UPDATE  
    SET col1 = col1_val1, 
        col2 = col2_val2 
WHEN NOT MATCHED THEN 
    INSERT (column_list) VALUES (column_values); 

其中,table_name 指的是更新的表,using()里邊的指的是數(shù)據(jù)來源表/視圖/子查詢結(jié)果集,condition指的是連接條件,如果滿足連接條件,set 字段1=值1,字段2=值2...

如果連接條件不滿足,則停止更新進行插入。
下面我們來舉例說明:

先創(chuàng)建被更新表merge_target,并往其中插入一條數(shù)據(jù)用來更新;

再創(chuàng)建更新表merge_source,用來向被更新表插入數(shù)據(jù);

下面準(zhǔn)備merge into腳本:

MERGE INTO merge_target target 
USING (SELECT B.name,B.age,B.target_id FROM merge_source B) source
ON (target.id=source.target_id) 
WHEN MATCHED THEN 
    UPDATE 
    SET target.name = source.name, 
        target.age = source.age 
WHEN NOT MATCHED THEN 
    INSERT(target.name,target.age) VALUES (source.name,source.age); 

結(jié)果如下:

另:MySql不支持merge into 語法。

相關(guān)文章

最新評論

武城县| 天气| 本溪市| 六安市| 昌黎县| 尉犁县| 治多县| 周宁县| 龙江县| 措美县| 平山县| 恩平市| 全椒县| 昌乐县| 志丹县| 定襄县| 大足县| 湖口县| 张家港市| 鹿邑县| 永川市| 古丈县| 射洪县| 兴山县| 辽源市| 县级市| 施甸县| 东阿县| 南华县| 卢湾区| 宣恩县| 深圳市| 彭泽县| 胶南市| 应城市| 乾安县| 西平县| 毕节市| 大足县| 台南县| 开封市|