关于SQL语句的批量update的写法,求解!
我现在有个数组array("1","2","3","4")我想将数据库表中所有id符合以上数组中的值的那条数据中status的值改成“1”,现在只想用一条sql语句来实现...
我现在有个数组array("1","2","3","4")我想将数据库表中所有id符合以上数组中的值的那条数据中status的值改成“1”,现在只想用一条sql语句来实现,how to do it?
展开
5个回答
2013-07-12
展开全部
update [tablename] set status = 1 where id=1 or id=2 or id=3 or id=4; update [tablename] set status = 1 where id between 1 and 4 update [tablename] set status = 1 where id in (数组的值)
2013-07-12
展开全部
如果数据不是很多,估计只能使用for循环来实现插入。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2018-03-03
展开全部
update 表明 set 列名=要改的值 where id in(数组里存的值)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-12
展开全部
UPDATE #TABLESET STATUS=1WHERE ID IN ("1","2","3","4")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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"
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"
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询