精华内容
下载资源
问答
  • Oracle 用一个表字段更新另一个表字段三种方法

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

    1. update (select .....) set column1 = column2;

    update (select iy.company_name company_name1, cc.company_name_jc company_name2
            from income_year_item iy , city_company cc

           where iy.company_code = cc.code
           )
       set company_name1 = company_name2;

    2.只能单行子查询s

    update  CITY_PROJECT_SCALE_INFO c  set
    (c.value) = (
           select d.value from CITY_PROJECT_SCALE_INFO @test d where d.project_id = '7d7fd580a06240b2a9137dc2bbe831e9'
              and d.project_id = c.project_id and c.company_code = d.company_code
    )
     where exists (
      select 1 from  CITY_PROJECT_SCALE_INFO @test d where d.project_id = '7d7fd580a06240b2a9137dc2bbe831e9'
              and d.project_id = c.project_id and c.company_code = d.company_code
    )

    3.使用merg inot 语句

    --更新生产基础字段
    merge into city_cfg_data_column_common cf1 using
          city_cfg_data_column_common2 cf2 on
          (cf1.resourceid = cf2.resourceid)
       when matched then
            update set   cf1.template_type = cf2.template_type,
                         cf1.chinese_name = cf2.chinese_name,
                         cf1.column_name = cf2.column_name,
                         cf1.column_type = cf2.column_type,
                         cf1.column_size = cf2.column_size
      when not matched then
           insert (cf1.resourceid,cf1.template_type,cf1.chinese_name,cf1.column_name,cf1.column_type,cf1.column_size
                  ,cf1.is_can_edit,cf1.is_unique,cf1.is_can_cover,cf1.show_order)
           values (cf2.resourceid,cf2.template_type,cf2.chinese_name,cf2.column_name,cf2.column_type,cf2.column_size
                  ,cf2.is_can_edit,cf2.is_unique,cf2.is_can_cover,cf2.show_order)

               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    展开全文
  • --Oracle 用一个表字段更新另一个表字段三种方法 --1、建测试如下 prompt PL/SQL Developer import file prompt Created on 2016年7月29日 by wsq set feedback off set define off prompt Disabling triggers for...
    --Oracle 用一个表字段更新另一个表字段三种方法
    --1、建测试表如下
    prompt PL/SQL Developer import file
    prompt Created on 2016年7月29日 by wsq
    set feedback off
    set define off
    prompt Disabling triggers for T_A...
    alter table T_A disable all triggers;
    prompt Disabling triggers for T_B...
    alter table T_B disable all triggers;
    prompt Truncating T_B...
    truncate table T_B;
    prompt Truncating T_A...
    truncate table T_A;
    prompt Loading T_A...
    insert into T_A (id, name, demo)
    values (1, 'aaa', 'bbb');
    insert into T_A (id, name, demo)
    values (2, 'ccc', 'ddd');
    insert into T_A (id, name, demo)
    values (3, 'eee', 'fff');
    commit;
    prompt 3 records loaded
    prompt Loading T_B...
    insert into T_B (id, name, demo)
    values (1, null, null);
    insert into T_B (id, name, demo)
    values (2, null, null);
    insert into T_B (id, name, demo)
    values (3, null, null);
    commit;
    prompt 3 records loaded
    prompt Enabling triggers for T_A...
    alter table T_A enable all triggers;
    prompt Enabling triggers for T_B...
    alter table T_B enable all triggers;
    set feedback on
    set define on
    prompt Done.
    --2.方法一
    UPDATE T_B B
       SET B.NAME =
           (SELECT NAME FROM T_A A WHERE A.ID= B.ID),
           B.DEMO =
           (SELECT DEMO FROM T_A A WHERE A.ID = B.ID);
    --3.方法二
    update T_B B
       SET (name, demo) =
           (SELECT name, demo FROM T_A A WHERE A.ID = B.ID)
    --4.方法三
    merge into T_B B
    using T_A A
    on (B.ID = A.ID)
    when matched then
      update set B.NAME = A.NAME, B.DEMO = A.DEMO
      

    展开全文
  • oracle进阶(六)根据一个表字段更新另一个表字段 1.普通情况 update ceshi a set a.fixed_time=(select submit_date from kaifa b where a.service_name=b.task_name ) where exists( select 1 from kaifa b where...

    oracle进阶(六)根据一个表字段更新另一个表字段

    1.普通情况
    update ceshi a set a.fixed_time=(select submit_date from kaifa b where  a.service_name=b.task_name )
     where  exists(
     select 1 from kaifa b where a.service_name=b.task_name
     )

    2.存在多条子查询
    update ceshi a set a.fixed_time=(select submit_date from kaifa b where   a.service_name=b.task_name and  task_name not in (
    select task_name from kaifa group by task_name having count(1)>1
           )
    )
     where  exists(
     select 1 from kaifa b where a.service_name=b.task_name
     )

    展开全文
  • 我们经常使用merge into 进行更新 merge into vhisfund ausing vhisfund_1107 bon (a.fund_account = b.fund_account and a.oc_date = b.oc_date)when matched then update set a.MONEY_TYPE = b.MONEY_TYPE ...

    我们经常使用merge into 进行更新

    merge into vhisfund a
    using vhisfund_1107 b
    on (a.fund_account = b.fund_account and a.oc_date = b.oc_date)
    when matched then
      update set a.MONEY_TYPE = b.MONEY_TYPE 
      commit;

    展开全文
  • update A set a.RegionName = b.RealName from dbo.RegionInfo a,dbo.MemberInfo b where a.ID = b.LocalMangeID
  • --更新生产基础字段 merge into city_cfg_data_column_common cf1 using city_cfg_data_column_common2 cf2 on (cf1.resourceid = cf2.resourceid) when matched then update setcf1.template_typ...
  • 使用merg inot 语句 --更新生产基础字段 merge into city_cfg_data_column_common cf1 using city_cfg_data_column_common2 cf2 on (cf1.resourceid = cf2.resourceid) when matched then update set cf1.template_...
  • 今天遇到这样一个需求: 有两张,一张是专辑,一张是专辑下的图片, 专辑中有拍摄年\月,两个字段;图片中有实际拍摄日期的字段; 因为专辑中这两个字段是后加入的,因此只能用一条sql语句将之前程序没有...
  • 这是因为在oracle的update语句中如果不写where子句,oracle将会默认的把所有的值全部更新,即使你这里使用了子查询并且某在值并不能在子查询里找到,你就会想当然的以为,oracle或许将会跳过这些值吧,你错了,oracle...
  • 种方法: UPDATE A SET A.字段 = D.字段 FROM A, B, C WHERE 条件 第二种方法: 第步:创建视图 CREATE VIEW 视图名称 as SELECT A.字段,B.字段 FROM A INNER JOIN B ON A.ID=B.ID 第二步;更新视图...
  • 有两个表A和B,均有key和value两个字段,如果B的key在A中也有,就把B的value换为A中对应的value 这道题的SQL语句怎么写? update b set b.value=(select a.value from a where a.key=b.key) where b.id in(select ...
  • 类型一:Oracle:另一个表的字段更新表字段例一、update chgtab set ( chgtab.bm, chgtab.ks ) = ( select cl.pk_doc, cl.pk_cumdoc from alterprovider cl where chgtab.fb_oid = cl.oid ) where ( chgtab.fb_oid ...
  • //10000条数据大概60秒 update product_sku_copy2 s, product_sku_bakk c set s.pCost = c.purchasePrice where s.pCode = c.pCode; //10000条数据大概20秒 update product_sku_copy1 s set pCost = (select ...
  • 情景如下:A中的ProdID和ProdName字段分别记录商品的编号和名称,B中的Prod字段存储的是商品的名称,现由于业务要求需将B中Prod字段存储的商品名称更新为其对应的ID(不需要考虑重名问题)。  实现方法如下...
  • 当然可以用merge into ,但是前提是更新表t1和被更新表t2是1对1的关系。如果有1对多的关系,会报错 ORA-38104: Columns referenced in the ON Clause cannot be updated:  可以用这种方法: update (select ....
  • update OrderVersion set OrderVersion.StandardId =Order.StandardId from Order,OrderVersion where OrderVersion.ProcessID = Order.ProcessID AND Order.StandardId is not null and Order.StandardId !...
  • updateainnerjoinbona.bid=b.idseta.content=b.remark; 设置多值可用逗号隔开; 过滤添加的条件使用where 过滤满足自己的条件
  • orcal更新一张表字段来自一张

    千次阅读 2019-10-29 15:09:45
    已知aa,bb数据如下,要求:根据aaid更新bbcode; SQL如下: UPDATE BBSET BB.CODE=(select AA.CODE from AA where AA.ID=BB.ID) where EXISTS (select 1 from AA where AA.ID=BB.ID ) 执行效果如下: ...
  • Oracle将一个表字段复制到另一个表中的字段
  • mysql从一个表字段赋值给另一个表字段,在线等待。table1 中 有字段 id,uid,name table2 中 有字段 id,name table1中的uid和table2中的id是一一对应的。 我如何把table2中的name一一对应赋值给table1中name 我的环境...
  • UPDATE t SET t.Premium = (SELECT TOP 1 Max( t2.Premium ) FROM dbo.TableName t2 WHERE t2.SetId = 2012 AND t2.Id = t.ID) FROM dbo.TableName t WHERE t.SetId = 2013...
  • 如果B存在idcar="201501"则将leibie="类别1"对应的记录更新B中 更新B的记录为:201501 0208 aa1 aa2 aa3 aa4 A和B中mun01,mun02,mun03,mun04列号是一致的。 在这先谢谢了! 如能远程帮一下,真是...
  • (MS SQL Server)语句:Sql代码 update b set ClientName = a.name from a,b where a.id = b.id (Oralce)语句:Sql代码 update b set (ClientName) = (SELECT name FROM a WHERE b.id = a.id) .....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,460
精华内容 3,784
关键字:

一个表字段更新另一个表