Oracle中用一个表的数据更新另一个表的数据

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)

时间: 2024-10-06 14:47:36

Oracle中用一个表的数据更新另一个表的数据的相关文章

Oracle 中用一个表的数据更新另一个表的数据

Oracle 中用一个表的数据更新另一个表的数据 分类: SQL/PLSQL2012-05-04 15:49 4153人阅读 评论(1) 收藏 举报 oraclemergesubqueryinsertnull 有下面两个表:将表tab1中id值与和表tab2中id值相同的行的val更新为tab2中val的值.select * from tab1; select * from tab2 最容易犯的错误是:update tab1 set val=(select val from tab2 where

Oracle中 如何用一个表的数据更新另一个表中的数据

建表语句: create table table1( idd varchar2(10) , val varchar2(20) ); create table table2( idd varchar2(10), val varchar2(20) ); 插入数据: insert into table1 values ('01','1111'); insert into table1 values ('02','222'); insert into table1 values ('02','2222'

mysql从一个表提取数据更新另外一个表(修复表数据的不一致)

目前碰到一个数据不一致的情况,有两张表,一张项目表,一张项目成员表,项目表有个字段是项目工作时间,是项目成员的工作时间汇总.是由于该了逻辑,所以要把数据改成一致. 项目表的大致结构如下. 表名:project 项目成员表大致结构如下. 表名:projectMember projectMember表的PID和project的Id关联,project_WorkTime是member_WorkTime的和. 往project表插三条数据. projectMember表数据如下: sql语句如下: UP

Oracle用其中一个表的数据更新另一个表

update tab1 set val = (select val from tab2 where tab1.id = tab2.id) where exists (select 1 from tab2 where tab1.id = tab2.id) 这样tab2中没有的部分就不会被更新到tab1,但如果tab2中没值的部分,tab1中就应该为空,那就把最后一句去掉,改成 update tab1 set val = (select val from tab2 where tab1.id = t

MySQL 两张表关联更新(用一个表的数据更新另一个表的数据)

有两张表,info1, info2 . info1: info2: 现在,要用info2中的数据更新info1中对应的学生信息,sql语句如下: UPDATE info1 t1 JOIN info2 t2 ON t1.name = t2.name SET t1.age = t2.age, t1.class = t2.class; 运行结果如下: 更新过的info1: 至于效率问题,之前我有三张表,都在40万左右.需要将 table2 中的两个字段(step1),table3 中的一个字段(ste

Oracle中用随机数更新字段----将一张表的数据插入另一张表----环境设置

DECLARE CURSOR recordCursor IS SELECT longitude,latitude FROM WR_WIUST_B_SEC FOR UPDATE; recordRow recordCursor % ROWTYPE; BEGIN OPEN recordCursor; LOOP FETCH recordCursor INTO recordRow; IF recordCursor % NOTFOUND THEN EXIT; ELSE UPDATE WR_WIUST_B_S

mysql 两个关联表如何更新其中一个表的数据

今天遇到一个客户的数据更新问题,两个相关联的表,一个主表用于保存单据主要信息,一个副表用于保存单据的明细信息:现在要把主表的其中一个字段的数据更新到副表的一个字段中保存. 假设: A表是主表,有单号order_id.开单人operator.开单日期oper_date.备注memo等: B表是副表,有单号order_id.序号id.商品编码code.商品名称name.备注memo等. A表的备注是有数据的,B表的备注没有数据,现在要把A表的数据更新到B表,并且B表有数据的不能更新了.A表与B表是以

sqlserver 基于一张表更新另外一张表

SQL Server中如何基于一个表的数据更新另一个表的对应数据?实现的SQL语句有很多方式: 方式一 INNER JOIN UPDATE Table_A SET Table_A.col1 = Table_B.col1, Table_A.col2 = Table_B.col2 FROM Some_Table AS Table_A INNER JOIN Other_Table AS Table_B ON Table_A.id = Table_B.id WHERE Table_A.col3 = 'c

spool命令、创建一个表,创建并且copy表,查看别的用户下的表,rowid行地址 索引的时候使用,表的增删改查,删除表,oracle的回收站

  1.spool命令 spool "D:\test.txt" spool off SQL> host cls 2.创建一个表 SQL> --条件(1):有创建表的权限,(2):有表空间 SQL> desc t4; 名称                                      是否为空? 类型 ----------------------------------------- -------- ------------------------