SQL 课程大纲
基础入门
- SQL 简介和历史
- 关系数据库概念
- 安装和配置数据库管理系统 (如 MySQL, PostgreSQL)
- 基本 SQL 语法
- 创建和管理数据库
数据定义语言 (DDL)
- 创建表 (CREATE TABLE)
- 修改表结构 (ALTER TABLE)
- 删除表 (DROP TABLE)
- 索引创建和管理
- 视图创建和管理
数据操作语言 (DML)
- 插入数据 (INSERT)
- 更新数据 (UPDATE)
- 删除数据 (DELETE)
- 基本查询 (SELECT)
- WHERE 子句和条件过滤
查询进阶
- 排序 (ORDER BY)
- 分组 (GROUP BY)
- 聚合函数 (SUM, AVG, COUNT, MAX, MIN)
- HAVING 子句
- 子查询
多表查询
- 表连接 (INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN)
- 自连接
- UNION 和 UNION ALL
- 相关子查询
函数和表达式
- 字符串函数
- 数值函数
- 日期和时间函数
- 条件表达式 (CASE WHEN)
- 类型转换
事务管理
- 事务概念
- ACID 属性
- 事务控制语句 (BEGIN, COMMIT, ROLLBACK)
- 事务隔离级别
索引和性能优化
- 索引类型和创建
- 执行计划分析
- 查询优化技巧
- 性能监控和调优
存储过程和函数
- 创建和使用存储过程
- 创建和使用自定义函数
- 参数传递
- 错误处理
触发器
- 触发器概念
- 创建和管理触发器
- 触发器类型 (BEFORE, AFTER, INSTEAD OF)
- 触发器应用场景
视图
- 视图概念和用途
- 创建和管理视图
- 可更新视图
- 物化视图 (特定数据库系统)
安全性和权限管理
- 用户创建和管理
- 授权和撤销权限
- 角色管理
- 数据加密
高级查询技术
- 窗口函数
- 公共表表达式 (CTE)
- 递归查询
- PIVOT 和 UNPIVOT 操作
数据仓库概念
- 数据仓库架构
- 维度建模
- ETL 过程
- OLAP 操作
NoSQL 集成
- 关系型数据库与 NoSQL
- JSON 数据类型和操作
- 全文搜索
数据库设计
- 实体关系图 (ERD)
- 范式化和反范式化
- 设计模式和最佳实践
数据库管理和维护
大数据和分布式数据库
SQL 在应用开发中的应用
- ORM 框架集成
- 数据库连接池
- 预处理语句和参数化查询
项目实战
- 数据库设计和实现
- 复杂查询和报表生成
- 数据仓库项目
SQL 和数据库生态系统
- 主流数据库比较 (MySQL, PostgreSQL, Oracle, SQL Server)
- SQL 标准和方言
- 持续学习和职业发展