mysql:增删改查语句大全
一、插入
1、 法一
insert into 表名(列名1,列名2,……)values(值1,值2,……);
insert into bbms.users (userid,username) values (‘123’,’张三一’);
2、 法二
insert into 表名 values (值1,值2,……)插入的顺序要跟表结构数据一样
3、 法三
insert into 表名 set 列名1=值1,列名2=值2,……;
4、 法四
多行同时插入 insert into 表名 select ……from ……;
SELECT 子句返回的是一个查询到的结果集,INSERT 语句将这个结果集插入指定表中,结果集中的每行数据的字段数、字段的数据类型都必须与被操作的表完全一致。
二、查询
1、 查询所有表中数据
select * from 表名;
2、 查询部分列
select 列名1,列名2,…… from 表名;
3、 给列起别名
select 列名1 别名1,列名2 别名2,…… from 表名; 注意
4、 去重:distinct 去掉重复的数据,重复是指完全一模一样的
select distinct * from 表名; 所有字段都一致,才是重复的
select distinct 列名1,列名2 …… from 表名;distinct后面的字段完全一致,才是重复的
5、 带查询语句的:where
一个查询条件的:=、>、<、<=、>=、!=、<>
多条件查询的:in、between...and..、and、or、not
模糊查询:like ,搭配通配符“%”,“_”一起使用
6、 查询前多少条 :limit
limit 2查询前两条,
limit 5,10 跳过前五条,查询后10条 select * from bbms.users u limit 2, 3 ;
分页sql:select * from table limit (start-1)*pageSize,pageSize;
7、 分组:group by :将查询结果按照1个或多个字段进行分组,字段值相同的为一组
group by + group_concat():表⽰分组之后,根据分组结果,使⽤group_concat()来放置每⼀组的某字段的值的集 合
group by + 集合函数(例如:avg、count等)
group by + having (having 条件表达式)
三、删除
1、 delete 用来删除表数据,表数据可以恢复
删除所有数据:delete from 表名;
删除特定的行:delete from 表名 where 条件;
2、 truncate 删除表数据,但是表结构依然存储,且数据不可恢复,也不能添加查询条件。
truncate table 表名;
3、 drop 不仅删除表数据,还删除表结构。如果要删除数据库、表、存储过程、自定义函数等,一般用drop
drop table 表名;
drop database 数据库名;
4、 使用别名
如果需要使用别名,需要在delete后面加上别名;否则会报错 delete u from bbms.users u where u.userid =’123’;
四、修改
1、 修改数据
update 表名 set 字段名1=值1,字段名2=值2,…… where 条件
2、 修改表结构
update table 表名 修改的动作语法
① 修改数据类型:alter table 表名 modify 字段 新数据类型
例:alter table user modify name varchar(50) not null;
② 修改字段名:alter table 表名 change 旧字段名 新字段名 新数据类型
例:alter table user change name u_name varchar(20) not null;
③ 添加主键:alter table 表名 add constraint 约束名字 约束类型(字段)
例:alter table user add constraint PK_user_id primary key(id);
④ 修改表名
例:rename table 旧表名 to 新表名
⑤ 添加唯一约束
alter table 表名 add unique(字段名)
⑥ 修改注释
--修改表注释 alter table bbms.users comment ‘用户表’;
--修改列注释 注意必须写上类型 否则改不了 alter table bbms.users modify column username varchar(200) comment ‘用户名’;
⑦ 新增字段 alter table bbms.users add column test1 varchar(200) not null default ‘0’ comment ‘预留字段1’;
⑧ 删除字段 alter table bbms.users drop column test3;
五、查看
1、查看所有表字段 show full columns from bbms.users;
2、查看建表语句 show create table bbms.users;
……