培训对象:
数据分析师/数据运营人员
商业智能(BI)工程师
需要从数据库提取数据的业务人员
后端开发工程师(需补齐数据查询能力)
准备从事数据相关工作的初学者
培训目标:
使学员系统掌握SQL核心语法与查询逻辑,熟练运用单表查询、多表关联、子查询、窗口函数等提取所需数据;深入理解数据清洗的SQL实现方法,包括空值处理、重复值剔除、异常值过滤、格式规范化等;能够编写高效的查询语句,具备从复杂数据结构中提取并清洗数据的实战能力,为后续数据分析与建模工作打下坚实基础。
培训内容介绍:
SQL基础与数据库环境搭建
关系型数据库核心概念(表/行/列/主键/外键);SQL语言分类(DDL/DML/DQL/DCL);主流数据库介绍(MySQL/PostgreSQL/SQL Server/Oracle);数据库连接工具使用(Navicat/DBeaver/DataGrip);SQL开发环境配置;第一个查询语句:SELECT * FROM table。
SELECT查询基础
SELECT语法结构;列的选择与别名(AS);常数字段与计算字段;DISTINCT去重查询;LIMIT限制返回行数;ORDER BY排序(升序/降序/多字段排序);注释的使用。
WHERE条件过滤
WHERE子句语法;比较运算符(=, !=, <>, >, <, >=, <=);逻辑运算符(AND/OR/NOT);IN与NOT IN;BETWEEN范围查询;LIKE模糊匹配与通配符(%/_);NULL值判断(IS NULL/IS NOT NULL);条件组合与优先级。
函数应用
字符串函数:CONCAT/SUBSTRING/REPLACE/UPPER/LOWER/LENGTH/TRIM;数值函数:ROUND/CEIL/FLOOR/ABS/MOD;日期函数:NOW/CURDATE/DATE_FORMAT/DATEDIFF/DATE_ADD/EXTRACT;转换函数:CAST/CONVERT;条件函数:CASE WHEN THEN ELSE END;IFNULL/COALESCE空值处理。
分组聚合查询
聚合函数:COUNT/SUM/AVG/MAX/MIN;GROUP BY分组语法;HAVING分组后过滤(与WHERE区别);多字段分组;分组后的排序;ROLLUP与CUBE简介;聚合查询常见应用场景。
多表连接查询
连接类型:INNER JOIN内连接、LEFT JOIN左连接、RIGHT JOIN右连接、FULL JOIN全连接;连接条件ON与WHERE区别;自连接应用;多表连接顺序与性能;连接查询与子查询对比;多表连接实战案例。
子查询进阶
子查询概念与分类;标量子查询(返回单值);列子查询(IN/ANY/ALL);行子查询;表子查询(派生表);相关子查询与EXISTS/NOT EXISTS;子查询在SELECT/FROM/WHERE/Having中的应用;子查询性能考量。
集合操作
UNION与UNION ALL(并集);INTERSECT交集;EXCEPT/MINUS差集;集合操作注意事项(列数/数据类型/排序);集合操作与连接查询对比。
窗口函数
窗口函数概念与语法;ROW_NUMBER()行号;RANK()与DENSE_RANK()排名;LEAD/LAG前后行访问;FIRST_VALUE/LAST_VALUE首尾值;SUM/AVG等聚合窗口函数;分区与排序组合;窗口函数与GROUP BY对比;滑动窗口计算。
数据清洗核心技能(上)
空值处理:NULL识别、填充默认值(COALESCE/IFNULL)、删除空值行;重复值处理:重复记录识别(GROUP BY+COUNT)、删除重复保留一条(ROW_NUMBER窗口函数);数据类型转换:CAST/CONVERT确保类型一致;文本清洗:去除空格、大小写转换、替换非法字符。
数据清洗核心技能(下)
异常值过滤:基于统计规则(超出N倍标准差)、基于业务规则(年龄>100/金额<0);格式规范化:日期格式统一(DATE_FORMAT)、电话号码/身份证号格式化;数据一致性校验:关联字段匹配、外键约束检查;多表数据对齐:维度表与事实表关联补全。
复杂数据提取实战
分页查询优化(LIMIT OFFSET性能问题与解决方案);随机抽样(ORDER BY RAND()性能问题与替代方案);分组取TOP N(窗口函数实现);累计计算(滚动总和/平均值);同比环比计算(LAG窗口函数);行列转换(CASE WHEN条件聚合)。
查询性能优化基础
EXPLAIN执行计划解读;索引类型与使用场景(主键索引/唯一索引/普通索引/组合索引);索引设计原则;避免索引失效的查询写法;查询重写优化;大数据量查询优化策略;慢查询日志分析。
视图与临时表
视图概念与作用;创建与管理视图;视图的更新限制;临时表使用场景;WITH子句(公用表表达式CTE);递归CTE基础;视图与临时表对比。
存储过程与函数基础
存储过程概念与语法;变量定义与赋值;参数传递(IN/OUT/INOUT);流程控制(IF/CASE/LOOP/WHILE);游标使用;自定义函数创建;存储过程与函数应用场景。
实战案例一:电商订单数据提取与分析
背景:电商平台订单数据提取。任务:查询特定时间段内订单(WHERE日期过滤)→按商品类目统计销售额(GROUP BY+SUM)→计算各品类销售额占比(窗口函数)→提取每个用户最近一笔订单(ROW_NUMBER窗口函数)→关联用户表补充用户维度信息→输出结果报表。
实战案例二:用户行为日志清洗
背景:APP用户行为日志数据清洗。任务:去除测试用户数据(WHERE过滤)→处理空值字段(COALESCE填充)→剔除异常行为数据(页面停留时间>1小时视为异常)→统一时间戳格式(FROM_UNIXTIME)→用户行为路径拼接(GROUP_CONCAT)→生成清洗后的行为宽表。
实战案例三:会员数据质量治理
背景:会员系统数据质量问题治理。任务:识别重复会员(GROUP BY+COUNT)→合并重复记录保留最新信息(窗口函数排序)→检查身份证号格式规范(正则表达式)→补全缺失的会员等级信息(CASE WHEN逻辑)→核对会员积分与消费记录一致性(关联校验)→输出数据质量报告。
实战案例四:销售报表自动化提取
背景:月度销售报表自动化。任务:创建视图封装核心指标计算逻辑→月度销售额与环比计算(窗口函数LAG)→各区域销售排名(RANK)→Top10商品提取(子查询)→多表关联生成完整报表数据→导出为CSV格式。
课程总结与进阶路径
SQL核心技能回顾;常见SQL面试题解析;SQL学习资源推荐;后续进阶方向(数据库设计/性能优化/大数据SQL/NoSQL);SQL在实际工作中的持续应用。