zoukankan      html  css  js  c++  java
  • Oracle UPDATE SQL语句多表关联

    1) 最简单的形式

    SQL 代码

     --经确认customers表中所有customer_id小于1000均为'北京'

    --1000以内的均是公司走向全国之前的本城市的老客户:)
    update customers
    set city_name='北京'
    where customer_id<1000

    2) 两表(多表)关联update -- 仅在where字句中的连接

    SQL 代码
    --这次提取的数据都是VIP,且包括新增的,所以顺便更新客户类别
    update customers a -- 使用别名
    set customer_type='01' --01 为vip,00为普通
    where exists (select 1
    from tmp_cust_city b
    where b.customer_id=a.customer_id
    )
    update mes_component_attributes ab 
    set ab.value = 'S' where exists(
    select 1 from mes_component cm where cm.sysid = ab.fromid 
    and cm.componentid = 'E2N063#07' and ab.name = 'COWGrade'
    ) --两表关联修改语句

    3) 两表(多表)关联update -- 被修改值由另一个表运算而来

    update customers a -- 使用别名
    set city_name=(select b.city_name from tmp_cust_city b where b.customer_id=a.customer_id)
    where exists (select 1
    from tmp_cust_city b
    where b.customer_id=a.customer_id
    )
    -- update 超过2个值
    update customers a -- 使用别名
    set (city_name,customer_type)=(select b.city_name,b.customer_type
    from tmp_cust_city b
    where b.customer_id=a.customer_id)
    where exists (select 1
    from tmp_cust_city b
    where b.customer_id=a.customer_id
    )

    本文来自博客园,作者:云辰,转载请注明原文链接:https://www.cnblogs.com/yunchen/p/15718384.html

  • 相关阅读:
    hdu 4563
    CPU中的主要的寄存器
    ROC曲线及AUC
    light oj 1231 dp 多重背包
    light oj 1422 区间dp
    light oj 1098 数学规律
    light oj 1095 组合数学
    DRAM & SRAM
    C-static
    C-枚举
  • 原文地址:https://www.cnblogs.com/yunchen/p/15718384.html
Copyright © 2011-2022 走看看