SQL 如何用update同时更新多个数据?
+------+------+|name|zam|+------+------+|tom|0||jack|0||lucy|0||mary|0|+------+------...
+------+------+
| name | zam |
+------+------+
| tom | 0 |
| jack | 0 |
| lucy | 0 |
| mary | 0 |
+------+------+
如何通过update一次性把里面的tom,jack,lucy,mary的zam改为1,也就是
+------+------+
| name | zam |
+------+------+
| tom | 1 |
| jack | 1 |
| lucy | 1 |
| mary | 1 |
+------+------+ 展开
| name | zam |
+------+------+
| tom | 0 |
| jack | 0 |
| lucy | 0 |
| mary | 0 |
+------+------+
如何通过update一次性把里面的tom,jack,lucy,mary的zam改为1,也就是
+------+------+
| name | zam |
+------+------+
| tom | 1 |
| jack | 1 |
| lucy | 1 |
| mary | 1 |
+------+------+ 展开
展开全部
如果是把表所有0都改成1,语句为:update 表名 set zam =1
示例:update [Test].[dbo].[Table_Test] set zam=1
执行前结果为:
执行后结果为:
如果只是部分改为1,则需要加入判断条件where,语句为:update 表名 set zam =1 where ....
示例:update [Test].[dbo].[Table_Test] set zam=1
where name ='tom' or name='jack' or name ='lucy'
执行后结果:
扩展资料:
UPDATE概述
用途:更新表中原有数据
单独使用,使用where匹配字段
set后面,更新字段值,既可以一次一项,也可以一次多项
例如1,
Update table_name Set column_name = new_value Where column_name = some_value
参考资料:
百度百科:update
展开全部
如果是整表修改的话,不加任何条件:
update tabname set zam = 1;
如果限制的话:
update tabname set zam = 1 where name in ('tom','jack','lucy','mary');
更多追问追答
追问
大概就是
update tabname set zam = 1 where name = 'tom'
update tabname set zam = 2 where name = 'jack'
update tabname set zam =3 where name = 'lucy'
update tabname set zam =4 where name = 'mary'
压缩为一句话怎么做
追答
还真做不了,只能是你那样的写法;
或者用程序段(循环)来实现(具体看你的数据库)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
UPDATE table_name SET zam = 1 WHERE NAME IN('tom','jack','lucy','mary')
是不是你想要的
是不是你想要的
追问
呃,我也没表达清楚自己的意思,其实我是想四次update压缩为一次,不知道怎么做
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
update table set zam=1 where name in ('tom','jack','luck','mary')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
UPDATE tabname
SET zam = CASE name
WHEN ‘tom’ THEN 1
WHEN ‘jack’THEN 2
WHEN ‘lucy’THEN 3
WHEN ‘mary’THEN 4
END
WHERE name IN('tom','jack','lucy','mary')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询