• merge into 的用法


    merge into 目标表 a

    using 源表 b

    on(a.条件字段1=b.条件字段1 and a.条件字段2=b.条件字段2 ……)

    when matched then update set a.更新字段=b.字段

    when not macthed then insert into a(字段1,字段2……)values(值1,值2……)


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


    CREATE TABLE a_ace (
    [id] int NULL ,
    [name] varchar(20) NULL
    )


    【table】【a_ace】
    INSERT INTO a_ace ([id], [name]) VALUES ('1', 'lisa');
    INSERT INTO a_ace([id], [name]) VALUES ('2', 'tom');
    INSERT INTO a_ace ([id], [name]) VALUES ('3', 'eddy');
    【table】【a_ace1】
    INSERT INTO a_ace ([id], [name]) VALUES ('1', 'lisa');


    merge into a_ace1 a
    using (select * from a_ace where id = 2) b
    on a.id=b.id
    when matched then
    update set a.name = a.name+' '+a.name
    when not matched THEN
    insert values(b.id,b.name);

    ===============================
    merge into a_ace1 a
    using a_ace b
    on a.id=b.id
    when matched then
    update set a.name = a.name+' '+a.name
    when not matched THEN
    insert values(b.id,b.name);

  • 相关阅读:
    2019年10月24日打印个人信息清单
    vsftp安装
    网络连接
    mysql多种方法修改密码----5.6的坑
    openstack-L版安装
    openstack是什么
    kvm快照
    文件操作
    函数
    virt-manage图形界面键盘错位问题
  • 原文地址:https://www.cnblogs.com/vmkash/p/10027221.html
Copyright © 2020-2023  润新知