指令集-SQL 常用指令速查手册

本文整理了 SQL 数据库操作中最常用的指令,涵盖库表管理、数据增删改查、多表查询、索引视图、用户权限以及关键的运维维护命令,旨在为开发者提供一份高效、实用的速查指南。持续更新中BUFF


1. 库与表管理 (DDL)

数据库操作

sql 复制代码
-- 创建数据库
CREATE DATABASE 数据库名;
-- 删除数据库
DROP DATABASE 数据库名;
-- 切换数据库
USE 数据库名;

表结构操作

sql 复制代码
-- 创建表
CREATE TABLE 表名 (
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    create_time DATETIME
);
-- 查看表结构
DESC 表名;
-- 删除表
DROP TABLE 表名;
-- 清空表(保留结构,重置自增ID)
TRUNCATE TABLE 表名;
-- 新增列
ALTER TABLE 表名 ADD COLUMN 列名 VARCHAR(20);
-- 删除列
ALTER TABLE 表名 DROP COLUMN 列名;
-- 修改列类型
ALTER TABLE 表名 MODIFY COLUMN 列名 INT;

2. 数据操作 (DML)

插入数据

sql 复制代码
-- 插入单条
INSERT INTO 表名 (列1, 列2) VALUES (值1, 值2);
-- 插入多条
INSERT INTO 表名 (列1, 列2) VALUES (值1, 值2), (值3, 值4);

更新数据

sql 复制代码
-- 修改数据(务必加 WHERE)
UPDATE 表名 SET 列1 = 新值 WHERE 条件;

删除数据

sql 复制代码
-- 删除数据(务必加 WHERE)
DELETE FROM 表名 WHERE 条件;

3. 数据查询 (DQL)

基础查询

sql 复制代码
-- 查询所有
SELECT * FROM 表名;
-- 查询指定列
SELECT 列1, 列2 FROM 表名;
-- 别名
SELECT 列1 AS 别名 FROM 表名;
-- 去重
SELECT DISTINCT 列名 FROM 表名;

条件筛选

sql 复制代码
-- 基础条件
SELECT * FROM 表名 WHERE 条件;
-- 逻辑组合
SELECT * FROM 表名 WHERE 条件1 AND 条件2;
SELECT * FROM 表名 WHERE 条件1 OR 条件2;
-- 范围查询
SELECT * FROM 表名 WHERE id BETWEEN 10 AND 20;
-- 包含查询
SELECT * FROM 表名 WHERE id IN (1, 2, 3);
-- 模糊查询
SELECT * FROM 表名 WHERE name LIKE '%关键字%';

排序与分组

sql 复制代码
-- 排序(ASC 升序,DESC 降序)
SELECT * FROM 表名 ORDER BY 列名 DESC;
-- 分组统计
SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名;
-- 分组后筛选
SELECT 列名, COUNT() FROM 表名 GROUP BY 列名 HAVING COUNT() > 1;

分页查询

sql 复制代码
-- MySQL 分页 (从第 0 条开始,取 10 条)
SELECT * FROM 表名 LIMIT 0, 10;

4. 多表查询

连接查询

sql 复制代码
-- 内连接(交集)
SELECT * FROM 表A INNER JOIN 表B ON 表A.id = 表B.aid;
-- 左连接(以左表为主)
SELECT * FROM 表A LEFT JOIN 表B ON 表A.id = 表B.aid;
-- 右连接(以右表为主)
SELECT * FROM 表A RIGHT JOIN 表B ON 表A.id = 表B.aid;

联合查询

sql 复制代码
-- 合并结果(去重)
SELECT 列名 FROM 表A UNION SELECT 列名 FROM 表B;
-- 合并结果(不去重)
SELECT 列名 FROM 表A UNION ALL SELECT 列名 FROM 表B;

5. 索引与视图

索引管理

sql 复制代码
-- 创建索引
CREATE INDEX 索引名 ON 表名 (列名);
-- 查看索引
SHOW INDEX FROM 表名;
-- 删除索引
DROP INDEX 索引名 ON 表名;

视图管理

sql 复制代码
-- 创建视图
CREATE VIEW 视图名 AS SELECT 语句;
-- 删除视图
DROP VIEW 视图名;

6. 用户与权限

用户管理

sql 复制代码
-- 创建用户
CREATE USER '用户名'@'%' IDENTIFIED BY '密码';
-- 授权(所有权限)
GRANT ALL PRIVILEGES ON 数据库.* TO '用户名'@'%';
-- 刷新权限
FLUSH PRIVILEGES;
-- 查看用户权限
SHOW GRANTS FOR '用户名'@'%';

7. 实用维护与运维指令

开放远程访问 (关键运维)

sql 复制代码
-- 1. 创建允许远程连接的用户 (% 表示任意主机)
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
-- 2. 授予远程用户所有权限
GRANT ALL PRIVILEGES ON . TO 'root'@'%' WITH GRANT OPTION;
-- 3. 刷新权限使其生效
FLUSH PRIVILEGES;
-- 注意:如果连不上,请检查防火墙端口是否开放

备份与还原 (Shell执行)

bash 复制代码
# 备份整个数据库
mysqldump -u root -p 数据库名 > backup.sql
备份所有数据库
mysqldump -u root -p --all-databases > all_backup.sql
还原数据库
mysql -u root -p 数据库名 < backup.sql

进程管理

sql 复制代码
-- 查看当前正在执行的线程(找慢查询)
SHOW PROCESSLIST;
-- 查看完整进程信息(不截断)
SHOW FULL PROCESSLIST;
-- 终止某个进程 (ID 来自 PROCESSLIST)
KILL 进程ID;

状态检查

sql 复制代码
-- 查看服务器状态
SHOW STATUS;
-- 查看配置变量
SHOW VARIABLES;
-- 查看最大连接数配置
SHOW VARIABLES LIKE 'max_connections';
-- 查看当前连接数
SHOW STATUS LIKE 'Threads_connected';
-- 查看表状态(包括引擎、行数、大小)
SHOW TABLE STATUS FROM 数据库名;

执行计划分析

sql 复制代码
-- 分析 SQL 语句执行效率(排查慢查询神器)
EXPLAIN SELECT * FROM 表名 WHERE 条件;

8. 数据库集群维护

添加节点

sql 复制代码
-- 添加 Backend 节点
ALTER SYSTEM ADD BACKEND "192.168.122.1:9050";
-- 查看节点状态
SHOW PROC '/backends';
-- 查看 Broker 状态
SHOW PROC "/brokers";

启动服务

bash 复制代码
# 启动 FE
bin/start_fe.sh --daemon
启动 Broker
bin/start_broker.sh --daemon
相关推荐
旺仔学长 哈哈16 分钟前
Spring Boot 智能停车场管理系统---附源码+数据库文档
数据库·spring boot·后端·智能停车场
ClickHouseDB33 分钟前
ClickHouse托管Postgres:OLTP+OLAP,新能力解锁最佳数据平台
java·前端·数据库
数智化管理手记1 小时前
主数据重复、错漏频发?一站式主数据管理平台如何落地?
大数据·运维·数据库·人工智能·数据挖掘
吴声子夜歌1 小时前
MongoDB 4.2——选择片键
数据库·mongodb
天天进步一点点2 小时前
QSqlQuery删除sqlite数据库执行drop数据表报错database table is locked unable to fetch row问题
数据库·oracle·sqlite
音视频工程实战2 小时前
PromptQL 新手入门与实战指南
数据库·sql·算法
清川渡水2 小时前
NL2SQL 的正确打开方式:从「AI 猜 SQL」到「置信度闭环」的工程化落地
数据库·人工智能·sql
TDengine (老段)2 小时前
TDengine Go 与 Rust 连接器 — 高性能异步访问
大数据·数据库·物联网·golang·rust·时序数据库·tdengine
东方佑3 小时前
MA-RMSNorm:打破“缩放换智能”的魔咒,大模型归一化的一次范式革命!
数据库·人工智能·计算机视觉
云和恩墨3 小时前
「云帆计划·长沙站」活动成功举办,云和恩墨与紫薇垣和湖南金悦科技分别签约并授牌,本地伙伴生态建设加速
数据库·科技