sql 批量修改数据11
发布网友
发布时间:2023-10-01 09:09
我来回答
共5个回答
热心网友
时间:2023-11-13 23:52
使用update 更新修改数据库数据,更改的结果集是多条数据则为批量修改。
语法格式如:
update 表格 set 列 = 更改值 where 筛选条件
例:
update table set a=1 --将table 中所以a列的值改为 1
update table set a=1 where b=2 --将table 中列b=2的记录中a列的值改为 1
热心网友
时间:2023-11-13 23:53
如果像你说的只有3000条数据应该没有任何问题
我们经常做几万甚至十几万的数据批量更新,sql可以很轻松的处理这些数据,就是对内存压力大些
热心网友
时间:2023-11-13 23:53
--插入临时表
select * into Temp表 from 表名 where B is not null or c is not null
--更新B字段
update 表名set 表名.B=Temp表.B
from 表名,Temp表
where 表名.A=Temp表.A and 表名.B is null
--更新C字段
update 表名set 表名.C=Temp表.C
from 表名,Temp表
where 表名.A=Temp表.A and 表名.C is null
--drop Temp表
drop table Temp表
热心网友
时间:2023-11-13 23:54
--测试数据如下:
SQL> create table temp(a number,b varchar2(1),c varchar2(1));
Table created
SQL> insert into temp values(1,'a','a');
1 row inserted
SQL> insert into temp values(1,'','');
1 row inserted
SQL> insert into temp values(1,'','');
1 row inserted
SQL> insert into temp values(2,'e','3');
1 row inserted
SQL> insert into temp values(2,'','');
1 row inserted
SQL> insert into temp values(2,'','');
1 row inserted
SQL> select * from temp;
A B C
---------- - -
1 a a
1
1
2 e 3
2
2
6 rows selected
SQL>
SQL> update temp t1
2 set (b,c)=(select b,c from temp t2 where t2.a=t1.a and t2.b is not null and t2.c is not null)
3 where t1.b is null and
4 t1.c is null;
4 rows updated
SQL> select * from temp;
A B C
---------- - -
1 a a
1 a a
1 a a
2 e 3
2 e 3
2 e 3
6 rows selected
热心网友
时间:2023-11-13 23:54
先连接数据库
然后
gz=10000
newgz=gz/100
sql=update
gongzibiao
set
gongzi="&newgz&"
set
rs=conn.execute(sql)