《SQL基础教程第2版》| 书评 + 学习笔记分享

上周总结了《<廖雪峰python3教程>| 书评 + 学习笔记干货》。这次,分享SQL。

SQL是数据分析师最最最最基本的技能了,基础却重要。在这篇博文里,我将:

  • 谈一谈我对这本书的感受
  • 分享我整理的笔记

如果你正在找学习SQL的书籍,不妨看看我的书评~

如果你正准备秋招数据分析师,推荐看看这本书,也不妨看看我的笔记~



👀 PART 1. 谈谈这本书

如书名所述,这本书侧重基础,读起来毫无压力,一天可以非常轻松的读完一章,一个星期就可以把书过一遍。如果你想快速的重温一遍SQL,这本书非常合适。

  • ☑️ 优点:看书不会太盲目,抓得到重点,也不会遗漏知识点。可以说这本书里的知识点都是你必须会的。

秋招的时候,我是直接刷题来巩固SQL的(我整理的《牛客网SQL实战二刷 | 完整解析 – 目录索引》)。但直接刷题最大的弊端就是,题库的知识点可能不全面。 哪怕我刷完了两遍,直到面试挂了,才知道原来有窗口函数(真是血淋淋的教训)。选择题里常考的事务/ACID特性,遇到了题目才发现原来不知道,然后才去记忆(看了书也不用死记硬背了,会基于理解的记忆)。

或许在实战(刷题)之前,我们更需要的是一份知识清单,简单、清晰、又不遗漏,这样才能有目标的学习,不走弯路不浪费时间,而这本书就是很好的知识点清单,可以说这本书里的知识点都是你必须会的。

否则,你只能祈求你的题库足够强大,刷足够多的题,甚至付出代价,浪费宝贵的面试机会才发现自己不会什么。

要是在更早前看了书,至少可以不会挂了bilibili。
但现在看书也不晚,至少在入职前搞清楚知识盲点。


总体来说,我是推荐这本书的。但它也有些不足,也不算硬伤:

  • 1️⃣:因为侧重基础,所以讲的不会很深,有的知识点需要自己去发散、深挖和延伸拓展,这样才会有更多的收获。

举个例子,添加列,书本讲的是 ALTER TABLE ... ADD ... 。但是我自己会想,那一次性添加多列怎么做呢?添加列在指定位置怎么做呢?然后又去查找资料,举一反三,学习到了更多的用法。如果你不这样阅读,这本书对有SQL基础的人来说,可能会过于简单了。

  • 2️⃣:书里有的说不支持的语法功能,现在版本的MySQL已经支持了,所以要带着考究的心态,边看书边质疑,边实证(自己run一遍)。

书本提供的绝大多数代码都是实际有效的。



💦PART 2. 学习笔记分享

边看书,边跑代码实例,边整理笔记。

笔记是非常personal的东西。一些我不会的知识点,可能你觉得太easy了;一些我会的你不会的知识点,我也没往笔记上记录。

所以,为了帮助大家更高效地运用我的笔记,我列了一份清单。如果有某个知识点你已经会了,那就可以跳过,有选择性的阅读我的笔记。

也可以拉到最后,直接看学习笔记~

📝 清单如下
  1. 注释的写法,包括(1)一行的注释(2)多行的注释。
  2. 添加列,包括(1)一次性添加多列(2)添加列在指定位置(3)添加列为第一列。
  3. 删除列,删除多列。
  4. 多行INSERT
  5. 变更表名字有三种写法
  6. COUNT()的用法,包括(1)COUNT(*)和COUNT(<列名>)在计算时候的区别(2)带有条件的COUNT()
  7. 聚合函数会不会计算上NULL
  8. MAX/MIN函数的性质
  9. 有些条件既可以写在HAVING字句中,又可以写在WHERE字句中,这是哪些条件?这种情况下,条件写在哪个子句中比较好?为什么?
  10. 从其他表中复制数据
  11. 数据的删除,包括(1)DROP TABLE 🆚 DELETE(2)清空表(3)删除指定数据行(4)DELETE 🆚 TRUNCATE
  12. 数据的更新,包括(1)UPDATE(2)更新指定条件的数据行(#)使用UPDATE将值清空为NULL(4)一次性多列更新
  13. 事务,包括(1)什么是事务(2)创建事务的语句(3)举例子(4)COMMIT(5)ROLLBACK(6)ACID特性
  14. 视图,包括(1)视图 🆚 表(2)视图的优点
  15. 关联子查询,分别用关联子查询和窗口函数两种方法实现对组内的统计
  16. 字符串拼接函数,(1)||(2)CONCAT()
  17. 字符串的替换
  18. 字符串的截取SUBSTRING
  19. 日期函数,包括(1)获取当前日期(2)获取当前时间(3)获取当前日期和时间(4)截取日期元素
  20. 转换函数,包括(1)CAST(2)COALESCE
  21. CASEWHEN 行列转换
  22. 表的集合运算,包括(1)UNION 🆚 UNION ALL (2)MySQL不支持INTERSECT和EXCEPT,这种情况下怎么实现
  23. 窗口函数,包括(1)那些函数可以作为窗口函数(2)为什么叫窗口函数(3)不指定PARTITION BY(4)关于排序的窗口函数(5)作为窗口函数使用的聚合函数(6)计算移动平均
  24. GROUPING 运算符,包括(1)ROLLUP(2)GROUPING函数(3)CUBE(4)GROUPING SETS函数

知识点主要从《SQL基础教程第2版》中摘录的,学习过程中还参考了一些网络上的资料,整理而成的。如果你直接看我的笔记也不能理解,那直接去看原著吧,或者参考更多的书目和资料。


🙋 获得笔记

所有的笔记都记录在 《<SQL基础教程第2版> 学习笔记分享 by圣洁不吃冰淇凌》,sql格式文件,获取文件通过百度网盘 👇

链接: https://pan.baidu.com/s/18Qy0wpBbzlx9GrUpC8-_mg
提取码: 8pr9

希望你也有所收获 ~ ❤️


支持原创知识分享,感谢你的点赞👍!!
我会继续分享更多的笔记。
一起加油一起学习吧~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值