很多数据分析初学者都被推荐学SQL,SQL是最基础且是必备的技能之一,但是不知道该从何学起,很多课程讲了很多知识点,但是初学的朋友没有对这一领域整体框架的认识,不知道该学哪些知识、有哪些知识、实际工作需要到什么程度,常常会担心自己该用的没学、学了的没理解或不会用等等。这里通过介绍21本学习SQL的经典书籍(可以说几乎所有人们经典书籍都囊括在内,对初学者、从业者都认可和检验的)。
从这些书里,多本书多个角度可以让你知道SQL总共有哪些内容(每本书都有不同和侧重,把所有知识点取并集,就可以知道知识边界在哪里,这是完备性),哪些内容是重要(大部分书都讲,且逻辑清晰的,取交集,就是重点,业务场景会经常使用的,这就是实用性)。
当然这里只针对数据分析师初学和从业的朋友,我们不是数据库管理人员或者开发人员,所以涉及跟linux交互、搭建数据库、主从复制、安全性等数据库管理内容不会过多,跟网站开发、APP开发、高并发、事务等开发内容也不会过多。对于数据分析师来说,一是怎么取出业务分析需要的数据,二在一的基础上怎么优化SQL查询语句以提高效率。
SQL的增删改查语句也不是都重要,很多初学者有个误区,以为增删改的知识学习也很重要,实际上作为数据分析师,往往只有查询的权限,而没有增删改,更没有搭建数据库的权限,所以这些知识点是一次性的,知道怎么回事就行,重点是怎么select取数。
另外鉴于MySQL是最流行也是几乎所有SQL初学者最易学、最易操作的数据库,本篇重点是在MySQL数据库,最后也会介绍SQL server、PostgreSQL、Oracle、Hadoop等其他常用数据库。因此,下面的推荐为基础入门、业务场景、优化与架构、常用数据库四个部分,共计21本电子书,我都有对应电子资源,可关注同名公V。
一、基础入门
基础入门有四本书,妥妥的经典,几乎所有入门的朋友应该都读过其中至少一本,四本书中MySQL必知必会的使用人数最多,其次是SQL基础教程,这两本通俗易懂、侧重不同;另外两本使用人数相对较少一些。通过豆瓣评分就可以知道四本书的受欢迎程度。
1.深入浅出SQL《Head First SQL》
“深入浅出SQL”实际上是“深入浅出”系列丛书之一,它一贯的风格就是很通俗易懂,用场景、对话、问答、图片编成故事来由浅入深的讲解概念和知识点,正因为如此会显得很啰嗦,你会看的很快也能理解它所讲的,但是偏基础,实用性不强,所以有的人喜欢有的人不喜欢。
不过从使用INSERT和SELECT这些基本的查询语法到使用子查询(subquery)、连接(join)和事务(transaction)这样的核心技术来操作数据库,该囊括的知识点它都囊括,如果你是文科生或者完全没接触过SQL,可以读一读。
2.MySQL必知必会《MySQL Crash Course》
这里需要说的是《SQL必知必会》和《MySQL必知必会》是两本书,但是都是同一个作者Ben Forta写的,顾名思义,后者是针对MySQL数据库的,但是《MySQL必知必会》包括了《SQL必知必会》的前20章内容而且多了十章关于MySQL的内容:高级搜索、视图、存储过程、游标、触发器、事务等。
《MySQL必知必会》讲解的知识点非常全面,从第4章到13章都在讲select语句里的每个关键字