1. 🧠 SQL语法入门教程
SQL(Structured Query Language) 是结构化查询语言,用于操作关系型数据库。本教程介绍常用 SQL 语法,包括数据查询、表操作、数据操作等基本命令。
📌 1. 基础概念
- 数据库(Database):数据的集合
- 表(Table):数据库中的结构化数据集合
- 字段(Column):表中的属性(列)
- 记录(Row):表中的数据项(行)
- 主键(Primary Key):唯一标识一行数据的字段
🗂 2. 数据定义语言(DDL)
用于创建和修改数据库结构。
2.1 创建数据库
CREATE DATABASE my_database;
2.2 删除数据库
DROP DATABASE my_database;
2.3 创建数据表
CREATE TABLE students (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
gender CHAR(1)
);
2.4 删除数据表
DROP TABLE students;
2.5 修改数据表
-- 添加列
ALTER TABLE students ADD email VARCHAR(100);
-- 修改列数据类型
ALTER TABLE students MODIFY age SMALLINT;
-- 删除列
ALTER TABLE students DROP COLUMN email;
📋 3. 数据操作语言(DML)
用于增删改查表中的数据。
3.1 插入数据
INSERT INTO students (id, name, age, gender)
VALUES (1, 'Alice', 20, 'F');
3.2 更新数据
UPDATE students
SET age = 21
WHERE name = 'Alice';
3.3 删除数据
DELETE FROM students
WHERE id = 1;
🔍 4. 数据查询语言(SELECT)
4.1 基本查询
SELECT * FROM students;
SELECT name, age FROM students;
4.2 WHERE 条件查询
SELECT * FROM students
WHERE age > 18 AND gender = 'F';
4.3 排序查询
SELECT * FROM students
ORDER BY age DESC;
4.4 模糊查询(LIKE)
SELECT * FROM students
WHERE name LIKE 'A%'; -- 以A开头
4.5 限制结果数量(LIMIT)
SELECT * FROM students
LIMIT 5; -- 前5条记录
📊 5. 聚合函数与分组
常用聚合函数
函数 | 说明 |
---|---|
COUNT() | 计数 |
SUM() | 求和 |
AVG() | 平均值 |
MAX() | 最大值 |
MIN() | 最小值 |
示例:
SELECT COUNT(*) FROM students;
SELECT AVG(age) FROM students;
SELECT gender, COUNT(*)
FROM students
GROUP BY gender;
🔗 6. 多表连接(JOIN)
6.1 内连接(INNER JOIN)
SELECT s.name, c.name
FROM students s
INNER JOIN courses c ON s.id = c.student_id;
6.2 左连接(LEFT JOIN)
SELECT s.name, c.name
FROM students s
LEFT JOIN courses c ON s.id = c.student_id;
🛡 7. 约束条件
- PRIMARY KEY:主键,唯一且非空
- NOT NULL:不能为空
- UNIQUE:唯一约束
- DEFAULT:默认值
- FOREIGN KEY:外键,引用其他表
CREATE TABLE orders (
id INT PRIMARY KEY,
student_id INT,
FOREIGN KEY (student_id) REFERENCES students(id)
);
🧪 8. 子查询与嵌套
-- 查询比平均年龄大的学生
SELECT * FROM students
WHERE age > (SELECT AVG(age) FROM students);
⚙️ 9. 常用数据库命令(MySQL)
-- 查看所有数据库
SHOW DATABASES;
-- 使用某个数据库
USE my_database;
-- 查看所有表
SHOW TABLES;
-- 查看表结构
DESC students;
📚 10. 推荐学习资源
- W3Schools SQL 教程
- 菜鸟教程 SQL
- 《SQL必知必会》
- LeetCode 数据库练习题
✅ 学习建议:多练习、多理解数据结构、用真实数据建表练手,理解 SQL 背后的逻辑更重要!