京公网安备 11010802034615号
经营许可证编号:京B2-20210330
CDA数据分析师 出品
作者:李诗怡
基础与单表查询 四大类语言 · 数据库基础 · DQL 单表查询
”
| 分类 | 全称 | 代表关键字 | 职责 |
|---|---|---|---|
| DQL | 数据查询语言 | SELECT |
负责查询:WHERE、GROUP BY、聚合、HAVING、ORDER BY、LIMIT、JOIN、子查询 |
| DDL | 数据定义语言 | CREATE、ALTER、DROP |
建库、建表、修改字段、删除表 |
| DML | 数据操作语言 | INSERT、UPDATE、DELETE |
新增、修改、删除行数据 |
| DCL | 数据控制语言 | GRANT、REVOKE |
给账号分配与收回查看数据库的权限 |
关系型数据库通过「行 + 列」组织结构化数据,这是理解所有 SQL 操作的前提。
”
语法
SELECT [DISTINCT] 列名 [AS 别名], ...
FROM 表名
[WHERE 筛行]
[GROUP BY 分组]
[HAVING 筛组]
[ORDER BY 排序]
[LIMIT n]
示例
-- 示例一:查指定字段
SELECT sid, sname, sex, birth_date FROM student;
-- 示例二:查所有列并只看前 2 行
SELECT * FROM student LIMIT 2;
要点
FROM 后跟表名* 表示所有列;列很多时不建议用,效率低LIMIT 放在所有子句最后面,只输出前 n 行语法
-- 列别名
列名 [AS] 别名
-- 表别名
表名 [AS] 别名
AS 可加可不加,省略写法一样生效示例
SELECT s.sname AS 学生姓名,
s.sex 性别
FROM student AS s
WHERE s.birth_date BETWEEN '2000-01-01' AND '2000-12-31'
ORDER BY s.sname;
语法
SELECT [ALL | DISTINCT] 列名, ... FROM 表名;
ALL 是默认的,什么都不写就等于不去重DISTINCT 加在第一个列名前DISTINCT 对后面所有列的组合去重,不是单独对某一列去重示例
-- 班级与性别的组合去重
SELECT DISTINCT cid, sex FROM student;
语法
SELECT 列名, ... FROM 表名 WHERE 条件表达式;
| 类型 | 内容 |
|---|---|
| 算术运算符 | 加、减、乘、除 |
| 比较运算符 | 等于、大于、大于等于、小于、小于等于、不等于 |
| 逻辑运算符 | AND(且)、OR(或)、NOT(非) |
| 其他条件 | BETWEEN ... AND、IN、LIKE、IS NULL |
优先级:算术运算 > 比较运算 > 逻辑运算
三种常量
| 常量类型 | 写法 |
|---|---|
| 数值常量 | 直接写 |
| 字符常量 | 必须加英文引号 |
| 日期常量 | 加引号,%Y-%m-%d 格式自动识别为日期 |
⚠️ 高频报错:字符常量用了中文引号,这是最常见的语法错误来源。
”
综合示例
-- 筛选 2000 年出生、1 班和 2 班的女性学生
SELECT *
FROM student
WHERE YEAR(birth_date) = 2001 - 1
AND sex = '女'
AND cid IN (1, 2);
???? 考点:三种常量的写法 —— 数值直接写、字符加英文引号、日期加引号。
”
语法
ORDER BY 列名 [ASC | DESC], ...;
ASC 升序(默认),DESC 降序两种写法
-- 写法一:跟列名排序
ORDER BY score
-- 写法二:跟位置序号排序,表示按第 3 个字段降序
ORDER BY 3 DESC
多字段排序:优先级从左到右 —— 先按 subject 升序,同科目内再按 score 降序。
-- 数学排在前,数学内部 92 分在 85 分之前
ORDER BY subject ASC, score DESC;
| 函数 | 作用 |
|---|---|
COUNT() |
对任意字段计数 |
SUM() |
数值求和 |
AVG() |
数值求平均 |
MAX() / MIN() |
求最大值 / 求最小值 |
STD() |
求标准差 |
???? 关键考点:
”COUNT(*)统计所有行数;COUNT(DISTINCT 列名)统计去重后的个数。
-- COUNT(*) 是成绩记录数,COUNT(DISTINCT sid) 是不重复的学生数
SELECT COUNT(*), COUNT(DISTINCT sid) FROM score;
语法
SELECT 分组列, 聚合函数(列名)
FROM 表名
GROUP BY 分组列;
三条规则
SELECT 的最前面,不允许出现游离变量SELECT 里只能出现分组列和汇总函数AS 给汇总结果起列别名,HAVING 会用到示例
-- 按科目分组,统计每个科目的考试次数、平均分、最高分
SELECT subject AS 科目,
COUNT(*) AS 考试次数,
AVG(score) AS avg_score,
MAX(score) AS 最高分
FROM score
GROUP BY subject;
执行逻辑:按分组列切成若干组,汇总函数对每一组分别计算。
两者都能写条件,但作用对象和执行时机完全不同。
| 对比维度 | WHERE | HAVING |
|---|---|---|
| 过滤对象 | 行(记录) | 组(分组结果) |
| 执行时机 | 分组前 | 分组后 |
| 汇总函数 | 不能跟 | 可以跟 |
| 列别名 | 不能用 | 可以跟 |
一句话记忆:
”WHERE管「哪些行进来」,HAVING管「哪些组留下」。
示例
-- 筛选平均分大于 80 分的科目
SELECT subject, AVG(score) AS avg_score
FROM score
GROUP BY subject
HAVING avg_score > 80;
???? 考点:
”HAVING直接跟新列别名,WHERE里不允许这样写。
SELECT)、DDL 定义(CREATE/ALTER/DROP)、DML 操作(INSERT/UPDATE/DELETE)、DCL 控制(GRANT/REVOKE)LIMIT 放最后ALL 是默认,等于不去重ASC 升序默认、DESC 降序;可跟列名或位置序号;多字段按书写顺序定优先级COUNT、SUM、AVG、MAX、MIN、STD;COUNT(*) 是行数,COUNT(DISTINCT 列名) 是去重个数SELECT 最前;SELECT 内只能有分组列与聚合函数

CDA数据分析师 出品 作者:李诗怡 基础与单表查询 四大类语言 · 数据库基础 · DQL 单表查询 ” 一、SQL 四大类语言与数据 ...
2026-11-13核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-11-13核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-11-13一、问题从哪来 财务分析里算增长率,常规公式所有人都会写: 增长率本年数上年数上年数 这个公式在"上年为正"时完全成立。但一 ...
2026-11-12一、什么是加权聚类 普通聚类默认"每个样本、每个指标都同等重要":距离公式里每个样本权重都是 1,每个指标在距离计算里占比相 ...
2026-11-12“纲举目张,执本末从。”若想在数据分析领域有所收获,一套合适的学习教材至关重要。一套优质且契合需求的学习教材无疑是那关键 ...
2026-11-12一、需求从哪来 做 Excel 报表时,"从一个透视表取数据"这个需求通常有三种来源: 汇总页引用:明细透视表在另一个 sheet,汇总 ...
2026-11-11一、透视表的价值在哪 一句话概括:数据透视表把"写公式汇总"变成了"拖字段看结果"。 传统做法要写 SUMIFS、COUNTIFS,改一个维 ...
2026-11-11核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-11-11一、回归分析到底在解决什么问题 很多人学回归分析,是从公式开始的:最小二乘法、残差平方和、R²、t 检验。公式记住了,但一到 ...
2026-11-10一、等级聚类法是什么 等级聚类法(Hierarchical Clustering),中文也叫系统聚类法、层次聚类法,是聚类分析里最经典的一类方法 ...
2026-11-10考试范围 PART 1 大数据基础理论 占比(8% ) a. 大数据分析基础(1%) b. Python 基础(5%) c. Linux & Ubuntu 操作系统基 ...
2026-11-10一、业务背景 在后台列表、管理系统、报表页面的分页需求里,前端通常需要两份数据:当前页的分页记录、符合筛选条件的数据总条 ...
2026-11-09一、需求看起来简单,实际坑不少 "把文本里所有中括号 [] 中间的内容提取出来"——这是文本清洗里最常见的需求之一。日志里的 [I ...
2026-11-09大数据分析师证书考什么 考试范围 PART 1 大数据基础理论 占比(8% ) a. 大数据分析基础(1%) b. Python 基础(5%) c. Li ...
2026-11-09CDA数据分析师 出品 作者:李诗怡 一、数据处理概述 定义: 在正式开展数据分析之前,对原始采集的数据进行整理、修正、加工和精 ...
2026-11-06一、为什么数据要先标准化 拿到一份数据,各列的量纲往往完全不同:年龄单位是"岁"(约 20~60),收入单位是"元"(几千到几万) ...
2026-11-06一、为什么 Python 成了统计分析的主流工具 十年前做统计分析,主流选择是 SPSS、SAS、Stata。现在越来越多的研究者、分析师转向 ...
2026-11-06核心资源推荐 CDA教材(2025):https://edu.cda.cn/goods/show/3151CDA模拟题(2025):https://edu.cda.cn/goods/show/2845CD ...
2026-11-06“大学生必备证书有哪些”最容易被答成一张越长越好的清单。但校招筛选的真实逻辑是:证书要对应你投的岗位任务,并且在校期间确 ...
2026-11-05