Follow me,从 0 到 1 掌握 SQL。
随着社会的快速发展,各类企业数字化转型迫在眉睫,SQL 应用能力日趋重要。 在诸多领域中 SQL 应用广泛,数据分析、开发、测试、维护、产品经理等都有可能会用到SQL,而在学校里系统性讲授 SQL 的课程较少,但是面试及日常工作中却经常会涉及到 SQL。这就要求我们提前掌握这一技能。笔者在多年的学习过程中,总结了一些方式方法。受 datawhale 开源理念影响,我非常愿意将我所掌握的知识分享给别人,于是乎,我就发起了这个项目,联合其他几位组织成员,结合经典图书《SQL基础教程》加上团队成员的经验教训,形成了本课程,希望可以帮助你更好的了解和掌握 SQL。
考虑到易用性和普及度,课程内容采用MySql
数据库进行介绍,具体的目录参见下方,每个章节附带了练习题,最后几个章节是整理的一些面试题,顺利完成本课程学习后,可以帮你更好的应对 SQL 相关的面试或者更好的开展 SQL 相关的日常工作。
本课程所涉及的各类文件存储在 ./materials
目录下,如果有疑问、建议或者勘误信息,请提交issue
或者 Pull request
给我们,我们将及时响应。
1、原则上所有 task 打卡时需要提供文章链接(总结学习内容,完成课后作业),task06 要求必须提交文章链接,不提交视为水卡。
2、组队学习期间关闭参考答案访问权限,其他时段开放访问权限(组队时段大概是每个月后两周,详见 Datawhale
公众号当月组队学习内容介绍)。
3、仓库下载便捷方式:采用 Git Bash
工具,执行命令 git clone https://github.com/datawhalechina/wonderful-sql
可以较为快速的下载本仓库到本地,然后使用 markdown 工具打开(比如 Typora)。
4、由于可能会进行组队学习,所以参考答案是不定期公开的,组队学习期间会收回查看权限,如未参加组队学习,但是想查看参考答案,可以通过如下链接添加我的飞书好友,私聊开通权限。
-
ch00:绪论 - 环境搭建
-
ch01:初识数据库
-
ch02:基础查询与排序
- ✅ 2.1 SELECT语句基础
- ✅ 2.2 算术运算符和比较运算符
- ✅ 2.3 逻辑运算符
- ✅ 2.4 对表进行聚合查询
- ✅ 2.5 对表进行分组
- ✅ 2.6 为聚合结果指定条件
- ✅ 参考答案链接
-
ch03:复杂一点的查询
- ✅ 3.1 视图
- ✅ 3.2 子查询
- ✅ 3.3 各种各样的函数
- ✅ 3.4 谓词
- ✅ 3.5 CASE 表达式
- ✅ 参考答案链接
-
ch04:集合运算
- ✅ 4.1 表的加减法
- ✅ 4.2 连结(JOIN)
- ✅ 参考答案链接
-
ch05:SQL高级处理
-
ch06:决胜秋招
-
Section A
-
Section B
-
Section C
-
✅ 参考答案链接
-
-
在线教程页面无法打开:
测试中存在部分人打不开在线教程的情况。
部分小伙伴反馈尝试切换浏览器后可以正常打开了,还可以参考 提高国内访问 GitHub 的速度的 9 种方案 中介绍的方法尝试打开。
如果仍然不行,最有效的解决办法是科学上网。
-
无法加载图片的解决办法:
根本解决办法还是科学上网,也可以尝试修改host文件看下是否能解决。
感谢以下Datawhale成员对项目推进作出的贡献(排名不分先后):
成员 | 个人简介及贡献 | 个人主页 |
---|---|---|
王复振 | 河北科技大学,公众号:数据科学探究,Datawhale成员,项目负责人,Task00/01/03/05/06内容构建 | Github |
杨煜 | 数据分析师,公众号:BI数据可视化,Datawhale成员,Task05/06内容构建 | |
闫钟峰 | 图书馆员,Datawhale成员,Task00/04内容构建 | |
杨梦迪 | 上海大学硕士,Datawhale成员,Task02内容构建 | |
苏鹏 | 东北大学硕士,Datawhale成员,Task00/01/03内容构建 | Github |
红星 | 广东工业大学,Datawhale成员,内测小组成员 | |
张晋 | 北京理工大学,Datawhale成员,内测小组成员 | |
汪健麟 | 电子科技大学硕士,Datawhale成员,内测小组成员 |
"Datawhale是一个专注AI领域的开源组织,以“for the learner,和学习者一起成长”为愿景,构建对学习者最有价值的开源学习社区。关注我们,一起学习成长。"