表结构: CREATE TABLE ATEST  (ID    INTEGER,   NAME  VARCHAR(256),   CODE  INTEGER,   NAME2 VARCHAR(256)  )
CREATE TABLE BTEST  (ID    INTEGER,   CODE  INTEGER  )
CREATE TABLE CTEST  (ID    INTEGER,   NAME  VARCHAR(256),   NAME2 VARCHAR(256)  )
SQL语句: 一张表更新另一张表的字段: update atest set atest.name=(select ctest.name from ctest where atest.id = ctest.id) where atest.id in  (select ctest.id from ctest);

两张表关联更新另一张表的字段: update atest set (name,name2) = (SELECT CASE WHEN CTEST.NAME IS NULL THEN ATEST.NAME ELSE CTEST.NAME END, CASE WHEN CTEST.NAME2 IS NULL THEN ATEST.NAME2 ELSE CTEST.NAME2 END FROM BTEST LEFT JOIN CTEST on BTEST.ID = CTEST.ID  WHERE atest.CODE = BTEST.CODE) WHERE atest.CODE IN (SELECT BTEST.CODE FROM BTEST);
另外一个: http://blog.csdn.net/Bobwu/archive/2009/01/13/3768636.aspx

1. declare cursor t1 is select * from tablename; begin for rec in t1 loop update tablename t set t.detail=rec.jieshao where t.objectid=rec.objid; end loop; end;

2.

update   student   set   (name,id   )=     (select   name   ,id     from   (select   student.rowid   rd,student1.name,student1.id   from   student1,student   where   student1.int_id   =student.int_id)   tmp     where   student.rowid=tmp.rd);     commit;

3.

update test_a a set (a.name,a.age)= (select b.name,b.age from test_b b where a.id = b.id) where exists (select * from test_b c where c.id=a.id)

4.

UPDATE   t_A   SET   Djrq=       (             SELECT   djrq   FROM   t_B   WHERE   t_A.ID   =   T_B.ID               WHERE   ROWNUM   =   1       )     WHERE   t_A.ID   IN       (             SELECT   ID   FROM   t_B   WHERE   jwh='XX村'     )

5.

update tbl1 a    set (a.col1, a.col2) = (select b.col1, b.col2                               from tbl2 b                               where a.key = b.key)    where a.key in(select key from tbl2)

DB2用一张表更新其他表的数据的更多相关文章

  1. MySql update inner join!MySql跨表更新 多表update sql语句?如何将select出来的部分数据update到另一个表里面?

    项目中,评论数,关注数等数据,是实时更新的.+1,-1 这种. 有的时候,可能统计不准确. 需要写一个统计工具,更新校准下. 用Java写SQL和函数,代码很清晰,方便扩展,但是太慢了. 为了简单起见 ...

  2. Mysql跨表更新 多表update sql语句总结

    Mysql跨表更新一直是大家所关心的话题,本文介绍mysql多表 update在实践中几种不同的写法 假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price:另外一张表是P ...

  3. mysql 去重,跨表更新,跨表删除

    一.去重 1.查询出重复的记录 CREATE TABLE push_log_full_2013_10_30_tmp SELECT * FROM `push_log_full` WHERE time B ...

  4. SQL 根据关联表更新主表中字段数据

    今天遇到一个客户的数据更新问题,两个相关联的表,一个主表用于保存单据主要信息,一个副表用于保存单据的明细信息:现在要把主表的其中一个字段的数据更新到副表的一个字段中保存.精通的SQL语法的,当然是很简 ...

  5. database first表更新一个表会更新所有的model,包括添加验证代码,解决办法

    因为model类是自动生成的,重新生成后会覆盖自己的修改.一个比较合理做法,就是用 partial class的方式来实现. 比如有一个Model类: Movie.那我们就可以添加一个局部类文件,局部 ...

  6. 用B表更新A表

    UPDATE dbo.POR_LOT SET POR_LOT.SHIPPED_FLAG =B.SHIPPED_FLAGFROM POR_LOT A INNER JOIN ( SELECT T5.LOT ...

  7. MYSQL如何通过一张表更新另外一张表?

    1.背景说明 很多时候我们需要通过一张中间表的数据去更新另外一张表,而不仅仅是通过固定数值去更新,尤其是当数据量很大的时候,简单的复制粘贴就不大可行了. 2.MYSQL版本 SELECT VERSIO ...

  8. SQL 把数据从一张表更新到另一张表

    代码写多了,有些使用过的方法和技巧会一时半会想不起来,平日记录下来,方便自己和有需要的人日后查阅. UPDATE tb1 SET tb1.fieldOne = tb2.fieldOne /* 将原始表 ...

  9. Mysql的跨表更新

    本文介绍mysql多表 update在实践中几种不同的写法. 假定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price:另外一张表是ProductPrice表,我们要将Pro ...

随机推荐

  1. spring配置文件详解--真的蛮详细

    spring配置文件详解--真的蛮详细   转自: http://book.51cto.com/art/201004/193743.htm 此处详细的为我们讲解了spring2.5的实现原理,感觉非常 ...

  2. iOS: 聊聊 Designated Initializer(指定初始化函数)

    iOS: 聊聊 Designated Initializer(指定初始化函数) 一.iOS的对象创建和初始化 iOS 中对象创建是分两步完成: 分配内存 初始化对象的成员变量 我们最熟悉的创建NSOb ...

  3. superF12

    superF12是开发内嵌ie内核的桌面客户端时的一个调试工具

  4. 【PHP面向对象(OOP)编程入门教程】15.static和const关键字的使用(self::)

    static关键字是在类中描述成员属性和成员方法是静态的:静态的成员好处在哪里呢?前面我们声明了“Person”的人类,在“Person”这个类里如果我们加上一个“人所属国家”的属性,这样用“Pers ...

  5. MySQL 8.0.0 版本发布,亮点都在这了!

    导读 MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司.目前MySQL被广泛地应用在Internet上的中小型网站中.由于其体积小.速度快.总体拥有成本低,尤其是开 ...

  6. 五款最佳Linux下载管理器推荐

    导读 新的Linux用户从Windows转换过来时面临的困难之一就是,找到一款优秀的下载管理器.如果你是或曾经是Windows用户,可能熟悉互联网下载管理器(IDM).下载加速器Plus(DAP)之类 ...

  7. Unity手游之路<十一>资源打包Assetbundle

    http://blog.csdn.net/janeky/article/details/17652021 在手游的运营过程中,更新资源是比不可少的.资源管理第一步是资源打包.传统的打包可以将所有物件制 ...

  8. eclipse svn

    1.上传初始项目在百度云上面创建一个空版本,然后右击项目->team->shareProject在svn的url后面加上你的版本号(否则上传失败) 2.把服务器上的项目更新到自己的项目wi ...

  9. JavaScript的作用域与作用域链

    作用域 作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期.可以说,变量和函数在什么时候可以用,什么时候被摧毁,这都与作用域有关. JavaScript中,变量的作用域有全局 ...

  10. Linux的五个查找命令

    1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件. find的使用格式如下: $ find <指定目录> <指定条件> <指定动作> ...