mysql 如何实现批量的将多条信息的同一字段更新为不同的值,如下表为例:
create table student(
id int(8) primary key,
name varchar(255) not null,
age int(3)
)engine=innodb defualt charset=utf8 collate=utf8_bin;
现需要将多条信息的name更新为不同的值,SQL语句怎么写?
case when
具体怎样呢,没用过这个词。
@一曲相思: 你这个问题就有点过分了哈,百度一大堆,人家都给你提示了
好像可以了,试了好多次才试出来。
更新总是需要条件的啊,加上条件:
update student set name='zhangsan' where id=1
update student set name='zhangsi' where id=2
update student set name='zhangwu' where id=3
update student set name='zhangliu' where id=4
update student set name='zhangqi' where id=5
update student set name='zhangba' where id=6
楼上的意见如何循环
@一曲相思: my_list = [1,2,3,4,5,6]
for i in my_list:
if i ==1:
update student set name='zhangliu' where id=1
elif i == 2:
update student set name='zhangqiu' where id=2
...
有重复数据判断条件可以用in
update 表名 set 列名=数据 where 条件
– Sun先生 4年前where id > 1 and id<11
– Sun先生 4年前