简介这份PDF资料是B站Mosh老师三小时SQL入门课程的配套笔记面向零基础或希望系统梳理SQL语法的开发者与数据分析初学者帮助其快速建立关系型数据库查询的知识框架。压缩包内共1个PDF文件约2.43MB内容以速查手册形式组织涵盖SELECT子句、WHERE条件筛选、AND/OR/NOT逻辑操作符、IN与BETWEEN范围判断、LIKE模糊匹配、REGEXP正则匹配、IS NULL判空以及ORDER BY排序、LIMIT限制、内外连接、USING与交叉连接、UNION合并和INSERT插入数据等核心语法并附有示例语句便于对照查阅。目前已有981人学习下载适合作为课程复习提纲或日常写查询时的随手参考帮助读者按主题快速定位语法要点、理解各操作符的适用场景从而减少翻查文档的时间。1. 到底什么是 SQL从一张“点菜清单”说起如果你第一次听到 SQL 这个词大概率是在招聘要求里或者某个数据岗位的面试题里。它读作“sequel”或“S-Q-L”全称是结构化查询语言。别被“语言”两个字吓到它跟中文、英文不是一回事——它更像一张写给数据库的点菜清单你告诉后厨要什么菜、不要放辣、按什么顺序上后厨照做把结果端到你面前。你不需要知道厨房里火候怎么控、食材怎么摆只要把需求说清楚就行。这份来自 B 站 Mosh 老师三小时课程的笔记本质上就是把这张“点菜清单”的常用句式整理成了一张速查表。它覆盖了 SELECT、WHERE、逻辑操作符、IN、BETWEEN、LIKE、REGEXP、排序、分页、连接和插入数据这些核心构造。说白了它不教你成为数据库专家而是让你在需要跟数据库打交道时能快速写出“能跑、能看懂、不翻车”的查询语句。搞懂 SQL 的价值在于无论你做开发、做运营还是做数据分析只要数据存在表里你就绕不开它。2. SQL 查询的骨架为什么一条语句要分好几段2.1 SELECT 和 FROM先决定“看哪列、从哪表”任何一条查询语句最核心的两块就是 SELECT 和 FROM。SELECT 决定你要哪些列FROM 决定你从哪张表里拿。笔记里给了一个很典型的例子SELECT * FROM customers WHERE state CA ORDER BY first_name LIMIT 3;。这条语句读起来就像一句话从 customers 表里挑出 state 是 CA 的客户按名字排序只要前三条。*是通配符意思是“所有列”。初学阶段用*很方便但真实项目里通常不建议——因为你会把不需要的列也拉出来数据量一大就拖慢速度。更稳妥的写法是把列名写清楚比如SELECT first_name, points FROM customers。另外笔记里特别提到SQL 本身不区分大小写但 MySQL 里每条语句必须以分号结尾。这个细节看着小实际踩坑的人不少少一个分号客户端就一直等你输入下一条你还以为程序卡死了。SELECT 里还能直接做运算比如SELECT (points * 10 20) AS discount_factor FROM customers。这里的 AS 是给计算结果起个别名方便阅读。运算顺序跟小学数学一样先括号再乘除最后加减。这个能力在报表场景里很实用比如把积分换算成折扣系数不用把数据取出来再用代码算。2.2 WHERE 和逻辑操作符把“全部数据”筛成“我要的那几条”WHERE 是过滤条件相当于点菜时说“不要香菜”。笔记里列了比较操作符大于、大于等于、小于、小于等于、等于、不等于和!都行。这些符号本身不难难的是组合条件时的逻辑。AND 要求两个条件同时成立OR 只要一个成立就行NOT 则是否定整个条件。举个笔记里的例子WHERE birthdate 1990-01-01 AND points 1000意思是 1990 年以后出生且积分超过 1000 的客户。如果把 AND 换成 OR范围立刻变大——只要满足其中一个就算。这里有个血泪经验当 AND 和 OR 混用时一定要用括号把意图写清楚否则数据库按自己的优先级执行结果可能跟你脑子里想的完全不一样。IN 操作符是多个 OR 的简写。WHERE state IN (VA, NY, CA)比写三个 OR 干净得多可读性也更好。BETWEEN 则是闭区间WHERE points BETWEEN 100 AND 200包含 100 和 200 本身这一点跟某些编程语言的范围函数不一样别搞混。2.3 LIKE 和 REGEXP模糊匹配的两把不同尺子LIKE 用于简单的模式匹配只有两个通配符%代表任意多个字符_代表恰好一个字符。WHERE first_name LIKE b%就是找所有以 b 开头的名字。它够用、好懂但表达能力有限。REGEXP 是正则表达式匹配能力更强。笔记里给了几个例子^a表示以 a 开头ey$|on$表示以 ey 或 on 结尾b[ru]表示 b 后面跟 r 或 u。正则的好处是一次能表达复杂的模式坏处是写错了很难排查。初学阶段建议先用 LIKE 解决大部分需求确实需要复杂模式再上 REGEXP。另外注意IS NULL是专门用来判断空值的不能用 NULL——空值在 SQL 里不等于任何东西包括它自己这是个经典误区。3. 排序、分页与连接让结果“按你要的顺序、按你要的规模”出现3.1 ORDER BY 和 LIMIT控制顺序和条数ORDER BY 决定结果怎么排默认是升序加 DESC 就是降序。笔记里的例子是ORDER BY state, first_name DESC意思是先按 state 升序排state 相同的再按 first_name 降序排。多列排序在实际场景里很常见比如先按部门排、再按入职时间排。LIMIT 控制返回多少条。LIMIT 3就是只要前三条。更实用的写法是LIMIT 6, 3意思是跳过前 6 条取 3 条——这就是分页的基础。很多后端接口的“第几页、每页几条”最终都会翻译成这种形式。需要注意的是LIMIT 如果不配合 ORDER BY返回的顺序是不确定的每次查可能都不一样。做分页时一定要有稳定的排序字段否则用户翻页时会看到重复或遗漏的数据。3.2 JOIN把分散在多张表里的信息拼起来真实数据库很少把所有信息塞在一张表里。客户信息在 customers 表订单信息在 orders 表靠 customer_id 关联。JOIN 就是把这些表按关联字段拼在一起。内连接JOIN 或 INNER JOIN只返回两边都匹配上的记录。笔记里的写法是FROM customers c JOIN orders o ON c.customer_id o.customer_id其中 c 和 o 是表的别名让语句更短。外连接分左外和右外LEFT JOIN会保留左表所有记录即使右表没有匹配——笔记里的例子是“返回所有客户不管他们有没有订单”。这个区别很关键内连接会丢掉没有订单的客户左连接不会。如果两张表的关联列名完全一样可以用 USING 简化JOIN orders o USING (customer_id)。CROSS JOIN 则是笛卡尔积把两张表的每一行都两两组合笔记里用“每种颜色配每种尺寸”来解释很直观。UNION 用于把两个查询结果上下拼在一起要求列数和类型对得上。3.3 INSERT数据是怎么进去的查询之外笔记也覆盖了插入数据。单条插入的写法是INSERT INTO customers(first_name, phone, points) VALUES (Mosh, NULL, DEFAULT)。这里有几个细节列名要跟值的顺序对应NULL 表示空值DEFAULT 表示用表定义的默认值。多条插入可以在 VALUES 后面跟多组括号用逗号隔开比一条条执行效率高。提示插入时如果省略列名就必须按表定义的顺序提供所有列的值这种写法很脆弱表结构一变就容易出错。显式写列名是更稳妥的习惯。4. 常见误区与易混概念这几组东西名字像用法差很远4.1 WHERE 和 HAVING 不是一回事易混点两者都用来过滤看起来可以互换。为什么混初学阶段只接触 WHERE遇到聚合结果需要过滤时第一反应还是写 WHERE。怎么区分WHERE 在分组之前过滤原始行HAVING 在分组之后过滤聚合结果。如果你要过滤的是“每个组的统计值”比如“订单总额超过 1000 的客户”那就得用 HAVINGWHERE 在这里会报错或逻辑不对。4.2 NULL 不等于空字符串也不等于 0易混点看到 NULL 就以为它是“空的”拿 或 0去判断。为什么混日常语言里“空”和“没有”是一个意思但 SQL 里 NULL 表示“未知”它跟任何值比较的结果都是未知不是真也不是假。怎么区分判断空值只能用IS NULL或IS NOT NULL。笔记里WHERE phone IS NULL就是标准写法。用 NULL永远查不到东西这是新手最常见的翻车点之一。4.3 LIKE 的%和正则的*别搞混易混点两个都表示“多个”容易随手混用。为什么混不同工具里通配符的约定不一样写多了容易串。怎么区分在 SQL 的 LIKE 里%是任意多个字符_是恰好一个而正则里的*表示前一个字符重复零次或多次含义完全不同。用 LIKE 时别写正则语法用 REGEXP 时别拿%当通配符。4.4 内连接和左连接的结果集大小可能差很多易混点觉得 JOIN 就是“把表连起来”用什么连接都一样。为什么混语法只差一个 LEFT看起来是小事。怎么区分内连接只保留两边都匹配的行左连接保留左表全部行、右表没匹配的补空。如果你要统计“所有客户包括没下单的”用内连接会悄悄丢掉一部分人数字对不上还很难查。4.5 DISTINCT 和 GROUP BY 都能去重但目的不同易混点两者都能让结果看起来“不重复”于是随便选一个。为什么混在小数据量、单列场景下结果确实一样。怎么区分DISTINCT 是对最终结果去重GROUP BY 是为了分组做聚合计算。如果你只是想去重看有哪些州用 DISTINCT如果你要算每个州的客户数用 GROUP BY 配合聚合函数。笔记里SELECT DISTINCT state FROM customers就是前者的典型用法。5. 什么时候该翻这份笔记什么时候别指望它这份三小时课程笔记的定位很清晰它是一张核心语法的速查表不是完整手册。笔记开头自己也说了它覆盖的是核心语言构造“并不完整”。所以判断标准很简单当你需要快速回忆某条语句怎么写、某个操作符什么含义、连接和分页的语法长什么样翻它很高效当你需要处理复杂的事务、索引优化、存储过程、权限管理或者面对特定数据库的方言差异这份笔记就不够用了得去查对应数据库的官方文档。具体来说几种典型适用场景刚学完课程需要复习拿它当提纲过一遍写查询时忘了 BETWEEN 是否包含边界扫一眼确认面试前快速过一遍 JOIN 和 UNION 的区别。不适用的场景也要说清楚生产环境里做性能调优光知道语法远远不够得看执行计划数据量上千万时SELECT *和缺索引的写法会直接拖垮查询这些不在速查表的能力范围内。场景适合翻这份笔记需要另找资料回忆 SELECT / WHERE 基本写法是否确认 LIKE 与 REGEXP 的通配符是否写多表连接但忘了 USING 语法是否查询慢需要优化否是看执行计划与索引跨数据库方言差异部分参考是查对应官方文档事务与并发控制否是我自己的习惯是每次写稍微复杂一点的查询之前先把过滤条件、排序、分页这三块在纸上列清楚再对照速查表确认语法最后才往编辑器里敲。这个习惯帮我省掉了很多“语法没错但结果不对”的排查时间。数据库不会猜你的意图你写什么它就执行什么所以把意图写明确比记住更多花哨语法更重要。希望这份整理能帮你在下次遇到 SQL 时少一点懵、多一点底气。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
金蝶KIS 10.0升级12.2全攻略:环境迁移与账套升级实战 简介:这份文档面向使用金蝶KIS的中小企业财务与信息化人员,聚焦从10.0版本升级到12.2版本过程中的功能变化与操作要点,属于个人汇总整理的参考资料,适合需要了解升级差异、评估迁移影响或进行系统切换的从业者查阅。压缩包内共1个… · 2026/11/13 5:20:18
PL/0词法分析器手写实现与教学级调试指南 简介:本资源是东北大学秦皇岛分校《编译原理》课程的词法分析实验报告,面向计算机专业本科生及编译技术初学者,聚焦PL/0语言词法分析器的设计与实现,解决从理论到代码落地的关键实践问题。报告含完整C实现代码、详细实验流程说明、… · 2026/11/13 5:20:18
Windows Server 2019部署Oracle 11g/19c常见报错与根因排查 简介:本资源是一份面向数据库运维工程师、系统集成人员及Windows平台Oracle初学者的实战部署指南,聚焦Windows Server 2019环境下Oracle 11g与19c服务端及客户端的全流程安装配置。内容覆盖操作系统基础搭建、NIC网络聚合配置要点、Oracle 19c Client连接… · 2026/11/6 3:11:06
长沙考电工证考点怎么选?考前押题能帮你多拿分 长沙考电工证考点怎么选?考前押题能帮你多拿分 你现在找工作卡在哪儿?就是因为没有电工证!别急, 长沙考电工证考点 选对了, 考前押题 练到位,一个月就能搞定,顺利上岗不是梦。 电工证到底有多重要? 在建筑、制造业、电力行业,没有… · 2026/11/13 5:20:16
川航电工证复审时间保姆级教程:学历不高也能搞定复审攻略 川航电工证复审时间保姆级教程:学历不高也能搞定复审攻略 你是不是也担心 学历不高怕报不上名 ?别急,今天咱们就来聊聊【川航电工证复审时间】这个事儿,用最直白、最接地气的 保姆级教程… · 2026/11/13 5:20:16
高级电工证难度大吗千万别踩坑?开封学员亲测避坑指南 高级电工证难度大吗千万别踩坑?开封学员亲测避坑指南 怕考不过白交培训费?高级电工证难度大吗?这是我最近接到最多的咨询,尤其是来自开封地区的学员。不少人在报名前信心满满,结果一考试就傻眼,不仅浪费了时间,还花了大把钱。别急,本文就帮你搞清楚高… · 2026/11/13 5:20:16
上虞 电工证怎么考上岗必须要这个证吗 上虞电工证怎么考?工地太忙根本没时间复习考试?保姆级教程来了! 工地太忙根本没时间复习考试,这句话说出了太多一线电工的共同痛点。上虞电工证怎么考?这是很多在工地打工的电工最关心的问题。其实,… · 2026/11/13 5:20:16
江门电工作业千万别踩坑,这3个坑别再踩了 江门电工作业千万别踩坑,这3个坑别再踩了 怕考不过白交培训费?江门电工作业的备考路上,很多学员踩坑后才意识到问题的严重性。尤其是对于许昌中小施工企业负责人来说,电工证不仅是上岗的门槛,更是企业安全生产的重要保障。本文从报名到考试、从复审到岗… · 2026/11/13 5:20:16
考电工证要学习几天报名费多少钱 电工证要学几天才能上岗?在哪考最靠谱? 你是不是正在找工作,但因为没有电工证被拒?是不是刚拿到电工证,却对考试内容一知半解?别急,今天我们就来聊聊【考电工证要学习几天】,以及【在哪考】最靠谱、最省心的途径,帮助你快速上手,顺利上岗。… · 2026/11/13 5:19:16
电工证丢失还能补吗?千万别踩坑,丢了证等于失业 电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。… · 2026/11/12 14:09:01
电力电缆作业证直播报名入口与办理流程良心建议 电力电缆作业证直播报名入口与办理流程良心建议 你是不是也担心学历不高报不了名?别急,今天就给你讲讲 电力电缆作业证直播 的报名流程和那些你必须知道的干货, 良心建议 在这里,别错过。 电力电缆作业证直播报名需要什么条件?… · 2026/11/11 19:07:25
英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 英德电工证报考费多少钱,怕考不过白交培训费?看完这篇别再踩坑 怕考不过白交培训费?英德电工证报考费多少钱,你真的了解吗?现在市面上培训机构五花八门,价格参差不齐,很多人一不小心就花了冤枉钱,结果还考不过。别急,今天就来给你说清楚英德电工证的… · 2026/11/12 23:27:43
维修电公用考电工证吗 在哪考最靠谱 维修电公用考电工证吗 在哪考最靠谱 工地太忙根本没时间复习考试,你是维修电工,天天在项目上跑,连抽个空背个题都难。那问题来了—— 维修电公用考电工证吗 ?答案是: 必须考 。尤其是在当前施工行业,没有电工证,连进场都可能被拦下。而且,… · 2026/11/13 0:00:08
电工证是不是可以登高?含金量和证书范围你必须知道的事 电工证是不是可以登高?含金量和证书范围你必须知道的事 证书过期了不知道怎么复审延期,这事儿很多人遇到过,尤其是像你这样在郑州金水区做劳务班组负责人,手里握着几十个工人的证书,稍微一疏忽,就可能影响工程进度和公司信誉。特别是电工证是不是可以登… · 2026/11/13 0:00:08
鸡西电工证哪家下证快官方报名入口怎么找 鸡西电工证哪家下证快官方报名入口怎么找 你是不是也担心 学历不高怕报不上名 ?别急,今天我就来跟你说说, 鸡西电工证哪家下证快 ,还有 官方报名入口 到底怎么找,别让那些“代办”“代考”耽误了你的机会。… · 2026/11/13 0:00:08
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/12 4:35:34
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/12 4:36:01
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/12 21:15:21