一、数据库管理
-
创建与删除数据库
CREATE DATABASE
:创建新数据库DROP DATABASE
:删除已存在的数据库ALTER DATABASE
:修改数据库属性
-
切换与查看数据库
USE
:选择当前工作数据库SHOW DATABASES
:列出所有可用数据库
二、数据表操作
-
创建与删除表
CREATE TABLE
:定义并创建数据表DROP TABLE
:删除已存在的表ALTER TABLE
:修改表结构(添加、删除列,更改列属性等)
-
查看表结构与数据
DESCRIBE
(DESC
):显示表的列信息SHOW CREATE TABLE
:显示创建表的SQL语句SELECT
:查询表中的数据
三、数据操作(DML)
-
插入数据
INSERT INTO
:向表中插入新记录
-
更新数据
UPDATE
:修改表中已有记录的值
-
删除数据
DELETE FROM
:从表中删除记录
四、查询处理
-
基本查询
SELECT
:选择要检索的列、表及过滤条件FROM
:指定查询的数据源WHERE
:设置查询条件ORDER BY
:对结果集进行排序LIMIT
:限制返回结果的数量
-
进阶查询
JOIN
:表连接操作(内连接、外连接、自连接等)GROUP BY
:按某一列或多列进行分组HAVING
:对分组结果应用过滤条件DISTINCT
:返回唯一结果集UNION
/UNION ALL
:合并多个查询结果- 子查询:嵌套查询结构
-
聚合函数与统计查询
COUNT
:计算行数SUM
:计算数值列的总和AVG
:计算数值列的平均值MAX
:查找最大值MIN
:查找最小值GROUP_CONCAT
:合并一组值为单个字符串
-
日期与时间函数
- 获取当前日期时间:
NOW()
,CURRENT_TIMESTAMP
- 日期时间处理:
DATE()
,TIME()
,YEAR()
,MONTH()
,DAY()
,HOUR()
,MINUTE()
,SECOND()
- 日期时间运算:
DATE_ADD()
,DATE_SUB()
- 日期时间格式化:
DATE_FORMAT()
- 获取当前日期时间:
-
字符串函数
- 拼接:
CONCAT()
,CONCAT_WS()
- 截取与替换:
SUBSTRING()
,REPLACE()
- 查找与定位:
LOCATE()
,INSTR()
- 大小写转换:
UPPER()
,LOWER()
,UCASE()
,LCASE()
- 去除空格:
TRIM()
,LTRIM()
,RTRIM()
- 拼接:
-
条件判断与控制流函数
IF()
:简单的条件判断CASE
表达式:多分支条件判断COALESCE()
/IFNULL()
:处理NULL值
五、权限与用户管理
-
用户账户管理
CREATE USER
:创建新用户DROP USER
:删除用户账户ALTER USER
:修改用户属性
-
权限授予与回收
GRANT
:赋予用户权限REVOKE
:撤销用户权限SHOW GRANTS
:查看用户的权限详情
-
角色管理
CREATE ROLE
:创建角色DROP ROLE
:删除角色GRANT ROLE
/REVOKE ROLE
:分配或取消角色给用户SET DEFAULT ROLE
:设置用户的默认角色
六、事务控制
-
事务启动与结束
START TRANSACTION
:开始一个事务COMMIT
:提交事务,使修改永久生效ROLLBACK
:回滚事务,撤销所有未提交的更改
-
事务隔离级别
SET TRANSACTION ISOLATION LEVEL
:设置事务的隔离级别
七、系统管理与维护
-
查看系统信息
SHOW STATUS
:显示服务器状态变量SHOW VARIABLES
:显示系统变量SHOW PROCESSLIST
:查看当前运行的线程(查询)
-
备份与恢复
mysqldump
:数据库备份工具RESTORE
/LOAD DATA INFILE
:数据导入恢复
-
性能分析与优化
EXPLAIN
:分析查询执行计划OPTIMIZE TABLE
:优化表结构ANALYZE TABLE
:收集表统计信息
八、其他实用命令
-
数据导出与导入
SELECT ... INTO OUTFILE
:将查询结果导出到文件LOAD DATA INFILE
:从文件中加载数据到表
-
程序化脚本与批处理
SOURCE
:执行SQL脚本文件