sql – db2:使用不同的表上的select更新多个行和字段
发布时间:2020-05-24 08:16:06 所属栏目:MsSql 来源:互联网
导读:是否可以使用不同表(B.c B.d)的值c和d为A的所有行增加表(A.a和A.b)的字段a和b,其中A.x == B.z? 我对此查询感到疯狂 DB2和SQL标准在UPDATE语句中没有FROM子句. 所以你必须明确地将步骤分开 识别要修改的行和 计算新值. . 这是一个例子: UPDATE TABLE ASET A.
|
是否可以使用不同表(B.c B.d)的值c和d为A的所有行增加表(A.a和A.b)的字段a和b,其中A.x == B.z? 我对此查询感到疯狂 解决方法DB2和SQL标准在UPDATE语句中没有FROM子句.所以你必须明确地将步骤分开 >识别要修改的行和 . 这是一个例子: UPDATE TABLE A SET A.FLD_SUPV = ( SELECT B.FLD_SUPV FROM TABLEA A,TABLEB B,TABLEC C,TABLED D WHERE A.FLD1= B.FLD1 AND A.FLD_DT >= B.FLD_FM_DT AND A.FLD_DT <= B.FLD_THRU_DT AND A.FLD_DT > D.FLD_THRU_DT AND A.FLD_DT < C.FLD_EFF_DT ) WHERE EXISTS ( SELECT B.FLD_SUPV FROM TABLEA A,TABLED D WHERE A.FLD1= B.FLD1 AND A.FLD_DT >= B.FLD_FM_DT AND A.FLD_DT <= B.FLD_THRU_DT AND A.FLD_DT > D.FLD_THRU_DT AND A.FLD_DT < C.FLD_EFF_DT ) 要更新两个字段,您可以使用如下示例: UPDATE table1 t1 SET (col1,col2) = ( SELECT col3,col4 FROM table2 t2 WHERE t1.col8=t2.col9 ) 优化器将看到SET和FROM子句中的子查询是相同的,它应该在内部执行计划中合并它们. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 将列默认值绑定到SQL 2005中的函数
- 如何在SQL Server中的列中添加标识?
- SQL Server出现System.OutOfMemoryException异常的解决方法
- 升级SQL Server 2014的四个要点要注意
- sql – 哪个更好..左外连接还是右外连接?
- linq-to-sql – 鉴于LINQ to Entities不支持“自定义方法”
- 安装MySQL后include目录下没有找到libmysql.lib
- sql-server-2008-r2 – 将SQL Server 2008 R2表/数据从开发
- SQL Server 锁表语句用法示例
- sql – 如何使用ADO和VB将NULL或空字符串传递给存储过程输入
