常用的SQL语句

发布于:2025-08-18 ⋅ 阅读:(16) ⋅ 点赞:(0)

1. 数据查询(SELECT)

-- 基础查询
SELECT * FROM table_name;

-- 条件查询
SELECT column1, column2 FROM table_name WHERE condition;

-- 排序
SELECT * FROM table_name ORDER BY column ASC/DESC;

-- 分组与聚合函数
SELECT column, COUNT(*) FROM table_name GROUP BY column HAVING COUNT(*) > 1;

-- 连接查询
SELECT a.column, b.column 
FROM table_a a 
JOIN table_b b ON a.id = b.a_id;

-- 子查询
SELECT * FROM table_name WHERE column IN (SELECT column FROM another_table);

-- 限制结果
SELECT * FROM table_name LIMIT 10;

-- 去重
SELECT DISTINCT city FROM users; 

-- 模糊查询
SELECT * FROM users WHERE name LIKE '张%';  -- 查询姓“张”的用户
SELECT * FROM users WHERE name LIKE '张_';  -- 查询名字为“张X”的用户

-- 范围查询
SELECT * FROM products WHERE price BETWEEN 100 AND 200;

2. 数据操作(DML)

-- 插入数据
INSERT INTO table_name (column1, column2) VALUES (value1, value2); -- 插入单条记录
INSERT INTO table_name (column1, column2) VALUES 
    (value1, value2),
    (value1, value2); -- 插入多条记录

-- 更新数据
UPDATE table_name SET column1 = value1 WHERE condition;

-- 删除数据
DELETE FROM table_name WHERE condition;

-- 清空表
TRUNCATE TABLE table_name;

3. 表结构管理(DDL)

-- 创建表
CREATE TABLE table_name (
    id INT PRIMARY KEY AUTO_INCREMENT,
    column1 VARCHAR(255),
    column2 DATE
);

-- 修改表结构
ALTER TABLE table_name ADD COLUMN new_column INT; -- 添加列
ALTER TABLE table_name DROP COLUMN column_name; -- 删除列
ALTER TABLE table_name MODIFY COLUMN column_name VARCHAR(50); -- 修改列类型

-- 重命名表
RENAME TABLE old_name TO new_name;

-- 删除表
DROP TABLE table_name;

4. 索引管理

-- 创建索引
CREATE INDEX index_name ON table_name (column); --创建普通索引
CREATE INDEX index_name ON table_name (column1, column2);--创建复合索引
CREATE UNIQUE INDEX index_name ON table_name (column_name); --创建唯一索引

-- 删除索引
DROP INDEX index_name ON table_name;

-- 查看索引
SHOW INDEX FROM table_name;

5. 事务控制

-- 开始事务
START TRANSACTION;

-- 提交事务
COMMIT;

-- 回滚事务
ROLLBACK;

-- 设置保存点
SAVEPOINT savepoint_name;
ROLLBACK TO savepoint_name;

6. 用户权限管理

-- 创建用户
CREATE USER 'username'@'host' IDENTIFIED BY 'password';

-- 授权
GRANT ALL PRIVILEGES ON database.* TO 'username'@'host';

-- 撤销权限
REVOKE ALL PRIVILEGES ON database.* FROM 'username'@'host';

-- 刷新权限
FLUSH PRIVILEGES;

-- 查看用户权限
SHOW GRANTS FOR 'username'@'host';

7. 常用函数

-- 聚合函数
SELECT COUNT(*), SUM(column), AVG(column), MAX(column), MIN(column) FROM table_name;

-- 字符串函数
SELECT CONCAT('Hello', ' ', 'World'), UPPER('text'), LOWER('TEXT');

-- 日期函数
SELECT NOW(), CURDATE(), CURTIME(), DATE_ADD(date, INTERVAL 1 DAY);

-- 数学函数
SELECT ABS(-10), ROUND(3.1415, 2), RAND();

8. 其他实用语句

-- 查看数据库列表
SHOW DATABASES;

-- 使用数据库
USE database_name;

-- 查看表结构
DESCRIBE table_name;

-- 导出数据(命令行)
mysqldump -u username -p database_name > backup.sql;

-- 导入数据(命令行)
mysql -u username -p database_name < backup.sql;

推荐一个非常好用的工具集合:在线工具集合 - 您的开发助手


网站公告

今日签到

点亮在社区的每一天
去签到