用来对数据库中表的数据记录进行增删改操作
添加数据(INSERT)
修改数据 (UPDATE)
删除数据 (DELETE)
给指定字段添加数据
INSERT INTO 表名(字段1,字段2···)VALUES(值1,值2····);
给全部字段添加数据
INSERT INTO 表名 VALUES(值1,值2….);
批量添加数据
INSERT INTO 表名(字段1,字段2···)VALUES(值1,值2····),(值1,值2····),(值1,值2····);
INSERT INTO 表名 VALUES(值1,值2….),VALUES(值1,值2….),VALUES(值1,值2….);
插入数据时,指定的字段顺序需要与值一 一对应
字符串和日期类型应该包含在引号中
插入数据大小,应该在字段的规定范围内
UPDATE 表名 SET 字段名1=值1,字段名2=值2,···WHERE 条件
DELETE FROM 表名 WHERE 条件
用来查询数据库中表的记录
关键字 SELECT
语法:SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段列表
HAVING
分组后条件列表
ORDER BY
排序字段列表
LIMIT
分页参数
查询多个字段
SELECT 字段1,字段2,字段3···FROM 表名;
SELECT * FROM 表名;
设置别名
SELECT 字段1 AS 别名1,字段2 AS别名2···FROM 表名;----AS可省略
去除重复记录
SELECT DISTINCT 字段列表 FROM 表名;
SELECT 字段列表 FROM 表名 WHERE 条件列表
将一列数据作为一个整体,进行纵向计算
常见聚合函数----作用于某一列(null值不参与聚合运算)
count ---统计数量
max---最大值
min---最小值
avg---平均值
sum---求和
SELECT 聚合函数(字段列表)FROM 表名
SELECT 字段列表 FROM 表名 WHERE 条件 GROUP BY 分组字段名 HAVING 分组后过滤的条件
where和having的区别
执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤
判断条件不同:where不能对聚合函数进行判断,而having可以
执行顺序:where >聚合函数>having
分组之后,查询的字段一般为聚合函数和分组字段,查询其他字段无任何意义
SELECT 字段列表 FROM 表名 ORDER BY 排序方式1,字段2 排序方式二;
排序方式
ASC:升序
DESC:降序
如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序
SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询记录;
第一页可以省略0
起始索引从0开始,起始索引=(查询页码.1),每页显示记录数。
分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT
如果查询的是第一页数据,起始索引可以省略,直接简写为limit10。
用来管理数据库用户,控制数据库访问权限
Mysql—系统数据库
查询用户
USE mysql;
SELECT * FROM user;
创建用户
CREATE USER ‘用户名’@‘主机名’ IDENTIFIED BY ‘密码’;
修改用户密码
ALTER USER ‘用户名’@‘主机名’ IDENTIFIED WITH mysql_native_password BY ‘新密码’
删除用户
DROUP USER ‘用户名’@‘主机名’;
查询权限
SHOW GRANTS FOR ‘用户名’@‘主机名’
授予权限
GRANT 权限列表 On 数据库.表名 TO’用户名’@‘主机名’
撤销权限
REVOKE 权限列表 On 数据库.表名 FROM ‘用户名’@‘主机名’
多个权限之间,使用逗号分隔
授权时,数据库名和表名可以使用*进行通配,代表所有。