sql中怎么批量更新列的数据

在一张表products 。字段。sn ,sell, marit,spec
现在要批量更新sell一列的数据值。列的数据值都是不一样的。sn的也不一样。要相对应,有900多条信息
sn sell marit spec
2260256 25 28 盒
。。。

怎么写SQL的更新语句。

第1个回答  推荐于2021-01-06
用这样的完全可以。
刚测试过了。

update products set sell=(select sell from table2 where sn='aa') where sn='aa';
既然你能确定SN是唯一的,那就可以用上边这个。

你更新数据,这样应该有两个表吧。

一个表就直接update products set sell=‘aa'
第2个回答  2013-07-15
update qc_top set top_id='1' where id=1
update qc_top set top_id='1' where id=2
同上.......
________________________________________
下面是批量更新
UPDATE qc_top
SET top_id = CASE id //表的更新列对应主ID
WHEN 1 THEN 1 //要更新的ID,更新的值
WHEN 2 THEN 2
WHEN 3 THEN 3
WHEN 4 THEN 10
WHEN 5 THEN 3
END
WHERE id IN (1,2,3,4,5) //从1到900 "WHERE id between 1 and 900"
第3个回答  2009-04-16
可以通过一个小程序从外部更新.用个循环.一条一条的更新.才900多条.一下就好了.
第4个回答  2009-04-16
按照你的说法,只能打开数据集 一条一条的手工改吧。。

SQL批量更新数据
1使用replace into 批量更新;2、编写代码使用insert into 和on duplicate key update批量更新;3、创建临时表,先更新临时表,然后从临时表中update,这种方法需要用户有temporary 表的create 权限;4、使用SQL自带的语句构建批量更新。

SQL中如何批量更新表中的记录
第一步,打开数据表,例如,要在表中找到数据1,见下图,转到下面的步骤。第二步,完成上述步骤后,单击“newquery”选项,见下图,转到下面的步骤。update[表名]set[字段名]=[值];如果是根据一个表更新此表,套用如下方式:update[表名]set[字段名]=(select[字段名]from[其他表]where[两表间的...

sql中怎么批量更新列的数据
一个表就直接update products set sell=‘aa'

SQL如何批量更新数据
如果更新的内容是一样的直接写一个sql语句全部更新掉就好了 比如:update 表名 set 更新字段1='需要被更新成的值',更新字段2='需要被更新成的值' where 更新的过滤条件 总体的语法是关键字update 表名 set 更新的字段名='更新内容',...如果多个字段可以使用逗号分隔。更新的关键是找到更新内容的规...

sql server 数据库中怎么批量删除连续指定行?批量修改连续行?怎么修 ...
在 SQL Server 数据库中,你可以使用 WHERE 子句来筛选特定行,并使用 UPDATE 或 DELETE 语句进行批量修改或删除操作。下面是一些示例:批量删除连续指定行: 假设你有一个名为 "TableName" 的表,其中包含一个连续的 ID 列。要删除 ID 范围在 10 到 20 的连续行,可以使用以下 SQL 语句:sql复制...

请教SQL批量更新语句
SQL批量更新语句 create table a1(id1 int primary key,va1 varchar(20))drop table b2 create table b2(id2 int primary key,va2 varchar(20))--创建一张中间表来储存被删除的id create table idrecord (id int )--a1 插入 测试数据 insert into a1 values (1, '地理');insert into...

SQL语句如何实现批量update符合条件的第一条记录?
解题思路: 首先利用class进行分组, 然后利用min(idx)将每个class中的第一条记录选出来,作为我们更新flag字段的条件.--- 测试截图如下:.因为不知道题主的表名叫什么,测试时表名用的是Information,语句里题主只需要将两处Information替换为自己实际的表名即可.=== 希望可以帮到题主, 欢迎追问....

sql在update更新时如何快速且大批量的更新数据
USING 源表 AS B ON (A.COL = B.COL) --匹配条件 WHEN MATCHED THEN --当匹配上就用B表的字段更新A表的字段 UPDATE SET A.COL1 = B.COL1,...A.COLn = B.COLn WHEN NOT MATCHED THEN INSERT(A.COL1,...,A.COLn) --下面这句是不匹配就插入数据 VALUES (B.COL1,...,B....

SQL批量修改
select a,sum(c) from zone group by a 这样就OK了.楼下那样做法肯定是不行的,你更新是把所有C列的值都更新成同国名的和,与楼主思想不一致.楼主你的思想得用手工来操作.一.按上面语句执行一遍,然后保存为不带表头的文本 二.delete from zone 三.把文本导回zone.这样就更新回去了.更好的办法...

SQL中如何批量更新表中的记录
因为原来的字段小数点后面不止四位,程序会字段添加些0在后面。告诉你正确的方法:一、给表增加一个字段,比如pcs_area2 decimal(9,4)二、执行语句update prodbasic set pcs_area2=pcs_area能自动进行四舍五入转换 三、删除表中字段pcs_area 四、修改pcs_area2的字段名为pcs_area ...

相似回答