DDL-库操作
查询
所有数据库
SHOW DATABASES;
当前数据库
SEKECT DATABASE();
创建
CREAT DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
删除
DROP DATABASE[IF EXISTS] 数据库名;
使用
USE 数据库名;
DDL-表操作
查询
查询当前数据库所有表
SHOW TABLES;
查询表结构
DESC 表名;
查询指定表的建表语句
SHOW CREATE TABLE表名;
创建
CREATE 表名(
字段1 字段1类型[COMMENT 字段1注释],
....
字段n 字段n类型[COMMENT 字段n注释]
)[COMMENT 表注释]
修改表
添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];
修改数据类型
ALTER TABLE 表名 MODIFY 新数据类型(长度);
修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
修改表名
ALTER TABLE 表名 RENAME TO 新表名;
删除表
删除表
DROP TABLE[IF EXISTS] 表名;
删除指定表,并重新创建该表
TRUNCATE TABLE 表名;
DML增删改
添加数据
-
给指定字段添加数据
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,...), (值1,值2,...), (值1,值2,...);
修改数据
UPDETE 表名 SET 字段1 =值1,字段名2=值2,...[WHERE 条件];
例如:update tb_user set name='change' where id=1;
删除数据
DELETE FROM 表名 [WHERE 条件];
**注意**DELETE语句不能删除某一个字段的值(可以使用UPDATE)
DQL(查询)
SELECT
字段列表
FROM
表名列表
WHERE
条件列表
GROUP BY
分组字段列表
HAVING
分组后条件列表
ORDER BY
排序字段列表
LIMIT
分页参数
基本查询
-
查询多个字段
SELECT 字段1,字段2,字段3,字段4,... FROM 表名; SELRCT *FROM 表名;
-
设置别名
SELECT 字段1 [AS 别名1],[AS 别名1],[AS 别名1]... FROM 表名;
-
去除重复记录
SELECT DISTINCT 字段列表 FROM 表名;
条件查询
SELECT * FROM 表名 WHERE [条件];
列如:SELECT * FROM emp WHERE age = 88;
条件
IN(…):在in之后的列表中的值多选1 LIKE 占位符 :模糊匹配(_匹配单个字符,%匹配任意个字符)
聚合函数
作用于列
常用函数
count
max
min
avg
sum
SELECT 聚合函数(字段列表) FROM 表名;
分组查询
SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件];
**having 函数可以使用聚合函数**