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. 推荐学习资源


✅ 学习建议:多练习、多理解数据结构、用真实数据建表练手,理解 SQL 背后的逻辑更重要!

results matching ""

    No results matching ""

    results matching ""

      No results matching ""