07.mysql插入、更新数据
原始表:
一、表里插入数据
插入数据,即不改变原始数据,往表里增加数据,有三种方式可以插入数据:
1.根据已知字段的值插入数据:
insert into 表名(字段1,字段2,字段3…)
values
(值1),
(值2),
…
例如:
insert into test.buff(id,st,sd)
values
(10,'luky',88),
(10,'luky',88)
2.按照表里默认字段顺序,需要插入的数据,所有字段都要有值:
insert into 表名
values
(值1),
(值2)
…
例如:
insert into test.buff
values
(11,'nam',99,'2022-09','2022-10'),
(12,'namee',990,'2022-03','2022-10')
3.查询出的结果,插入数据中,select 查询出的字段个数,顺序,要要与inset的保持一致,否则报错:
insert into 表名
select * from 表表名
例如:
insert into test.buff
SELECT * FROM test.buff
where id = 1
二、更新数据
更新数据:不增加数据,更新已经存在的数据的某条记录的值
长用到的有2种方式:
1.更新表里的数据:
update 表名
set 要更新的字段 = 更新后的值
where 条件(筛选出要更新的行)
例如:id为2的sd值更新为888
update test.buff
set sd = 888
where id = 2
2.查询的结果更新数据:
update 表名 A
inner join
(select * from 表名) B
set A.更新字段 = B.更新字段
例如:把888改成999
update test.buff Ainner join(select 2 as id,999 as sd) BONA.id=B.idsetA.sd=B.sd