MySQL数据库语句总结
一. 数据定义语言 DDL
数据定义语言,用来定义数据库对象的(比如:数据库、表、字段等)
1. 数据库操作
(1)查询所有的数据库 —— show databases;
(2)创建数据库 —— create database test;
(3)创建字符集:utf8默认为3个字符集,utf8mb4为4个字符集——create database slj default charset utf8mb4;
(4)使用数据库—— use slj;
(5)删除数据库——drop database slj;
2. 表操作
(1)展示数据库中的表——show tables;
(2) 创建表
create table 表名 (
变量名 变量类型 comment ‘注释’,
变量名 变量类型 comment ‘注释’,
变量名 变量类型 comment ‘注释’,
变量名 变量类型 comment ‘注释’,
);
(3)查询表——desc 表名
(4)展示更为详细的信息—— show create table user;
(5)表修改——添加字段
alter table 表名 add 字段名 类型(长度)
(6)表修改——修改数据类型:alter table 表名 modify 字段名 新数据类型(长度);
(7)表修改——修改字段名: alter table 表名 change 旧字段名 新字段名 类型(长度);
(8)表修改——删除字段
alter table 表名 drop 字段名
(9)表修改——修改表名
alter table 表名 rename to 新表名
(10)删除表——drop table 表名
二. 数据库操作语言 DML
数据库操作语言,对数据进行增(insert)删(delete)改(update)。
1. 增加:insert
①给指定字段添加数据
insert into 表名 (字段1,字段2) values (值1,值2);
②给全部字段添加数据
insert into 表名 values (值1,值2,值3…);
③批量添加数据
insert into 表名 values (值1,值2,值3…), (值1,值2,值3…);
运行结果:
2. 修改:update
update 表名 set 字段名1=值1,字段名2=值2…[where 条件];
3. 删除:delete
delete from 表名 [where 条件]
三. 数据库查询语言 DQL
数据库查询语言,用来查询数据库中表的记录 select
1. 基本查询
(1)查询信息
select 字段1,字段2,字段3 from 表名;
(2)起别名
select 字段1 as 别名1… from 表名;
(3)去重查询
select distinct 字段列表 from 表名;
2. 条件查询 where
select 字段列表 from where 条件列表
① between 最小值 and 最大值
② 字符串判断是否为空 is (not) null
③ like :模糊处理字符,'_‘代表字符个数,’%'代表精确的字符
④不等式两种实现方法: != 和 <>
⑤&& = and
⑥|| = or
⑦一个字符列表匹配多个值 in(值1,值2,值3)
3. 聚合查询
聚合函数:将一列数据作为整体,进行纵向计算
select 聚合函数(字段列表)from表名
常见的聚合函数:count max min avg sum
统计数量:
统计平均年龄
统计最大年龄
统计最小年龄
统计年龄和
4. 分组查询 group by… having
select 字段列表 from 表名 where… group by 分组字段名 having 分组后过滤条件;
①根据性别分组,统计男员工和女员工的数量
②根据年龄分组,统计年龄为12的女员工数量
4. 排序查询 order by
如果是多字段排序,当第一个字段值相同的时候,才会根据第二个字段进行排序 。
asc:升序(默认值)
desc:降序
年龄相同,根据id进行排序
5. 分页查询 limit
select 字段列表 from 表名 limit 起始索引,查询页数;
注意语句的编写顺序是:from——whre——group by——having——order by——limit
四. 数据库控制语言 DCL
控制数据库的访问权限,用来管理数据库用户。
- 查询用户
use mysql;
select * from user; - 创建用户
create user ‘用户’ @ ‘主机名’ identified by ‘密码’; - 权限控制
3.1 查询权限
show grants for …;
3.2 授予权限
grant all on … to…;
3.3 撤销权限
revoke all on … from…;