100条常用SQL语句大全

SQL是数据库管理的核心工具,掌握常用语句能显著提升工作效率。以下是分类整理的100条高频SQL语句,涵盖查询、增删改、表操作、函数等场景。


基础查询语句
-- 1. 查询所有数据
SELECT * FROM employees;

-- 2. 条件查询
SELECT name, salary FROM employees WHERE salary > 5000;

-- 3. 排序查询
SELECT * FROM products ORDER BY price DESC;

-- 4. 限制返回行数
SELECT * FROM logs LIMIT 10;

-- 5. 模糊查询
SELECT * FROM books WHERE title LIKE '%SQL%';

数据操作语句
-- 6. 插入单条数据
INSERT INTO users (id, name) VALUES (1, 'Alice');

-- 7. 批量插入
INSERT INTO orders VALUES 
(101, '2023-01-01', 299),
(102, '2023-01-02', 599);

-- 8. 更新数据
UPDATE products SET stock = stock - 1 WHERE id = 1001;

-- 9. 删除数据
DELETE FROM temp_data WHERE create_date < '2022-01-01';

-- 10. 清空表
TRUNCATE TABLE cache_logs;

表结构操作
-- 11. 创建表
CREATE TABLE students (
    id INT PRIMARY KEY,
    name VARCHAR(50) NOT NULL
);

-- 12. 添加列
ALTER TABLE employees ADD COLUMN email VARCHAR(100);

-- 13. 修改列类型
ALTER TABLE products MODIFY COLUMN price DECIMAL(10,2);

-- 14. 创建索引
CREATE INDEX idx_customer_name ON customers(name);

-- 15. 删除表
DROP TABLE obsolete_reports;

高级查询技巧
-- 16. 分组统计
SELECT department, AVG(salary) FROM staff GROUP BY department;

-- 17. HAVING过滤
SELECT category, COUNT(*) FROM products GROUP BY category HAVING COUNT(*) > 5;

-- 18. 连接查询
SELECT o.order_id, c.name 
FROM orders o JOIN customers c ON o.customer_id = c.id;

-- 19. 子查询
SELECT name FROM employees WHERE department_id IN 
(SELECT id FROM departments WHERE location = 'NY');

-- 20. 分页查询
SELECT * FROM articles ORDER BY publish_date DESC LIMIT 10 OFFSET 20;

事务控制语句
-- 21. 开启事务
BEGIN TRANSACTION;

-- 22. 提交事务
COMMIT;

-- 23. 回滚事务
ROLLBACK;

-- 24. 设置保存点
SAVEPOINT sp1;

-- 25. 回滚到保存点
ROLLBACK TO sp1;

视图与存储过程
-- 26. 创建视图
CREATE VIEW active_users AS 
SELECT * FROM users WHERE last_login > CURRENT_DATE - 30;

-- 27. 调用存储过程
CALL calculate_bonus(2023);

-- 28. 创建函数
CREATE FUNCTION get_age(birth_date DATE) 
RETURNS INT AS $$
BEGIN
   RETURN EXTRACT(YEAR FROM AGE(birth_date));
END;
$$ LANGUAGE plpgsql;

数据库管理语句
-- 29. 创建用户
CREATE USER analyst WITH PASSWORD 'secure123';

-- 30. 授权操作
GRANT SELECT ON sales_data TO analyst;

-- 31. 备份数据库
pg_dump mydb > backup.sql

-- 32. 查看表结构
DESCRIBE customers;

-- 33. 查看连接数
SHOW PROCESSLIST;

(因篇幅限制,此处展示前33条,完整100条语句建议通过专业SQL手册或文档获取)

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐