该篇文章包含以下几个部分:

  1. 什么是SQL及相关概念
  2. 数据分析师学习SQL的哪些部分
  3. 学习资源推荐
  4. 练习网站推荐
  1. 什么是SQL及相关概念

在了解SQL之前,先思考一个问题:当我们在浏览网页的时候,页面中的信息,或者说“数据”,来自于哪里?

答案就是页面中的数据来自于公司的数据库。

对于用户来说,其看到的是网页中显示的信息,比如某品牌某型号手机的价格是3999元,页面的感官非常具有设计感,不同的颜色不同的字体以及不同的手机图片,让人忍不住剁手的欲望。

某网购平台页面显示各种手机的信息

而对于数据分析师而言,从公司的数据库中提取的数据的展现形式,是一张张简简单单的记录了所有信息的表格,类似于excel之中的表格。网页采用了这些数据,套用上一个设计好的模板,最终显示给用户。

数据分析师看到的各个手机信息的形式

数据库,Database,是保存着很多数据的一个容器,那么作为数据分析师,需要学习的是如何从数据库中提取出我们所需要的数据,为了做到这一点,我们使用一种语言,叫做Structured Query Language,即SQL,中文是结构化查询语言。

为了能够方便的使用SQL这种语言,市面上现在存在着很多软件,让你可以通过输入SQL访问数据库,这样的软件,叫做Database Management System,即DBMS,中文是数据库管理系统。

DBMS主要有两个部分组成,即客户机和服务器,用户可以通过客户机提出对数据进行动作的请求,该请求由客户机发送给服务器,服务器接着运行请求,满足用户的需求。

DBMS的组成部分

目前的DBMS可以分为两类,分别是关系型DBMS(Relational DBMS,RDBMS)和非关系型DBMS。

关系型DBMS将数据保存在不同的表中,表与表之间建立有紧密的联系,可以通过表的连接等方式获得请求的数据。

非关系型DBMS则是用键值对的形式存储数据,即每一个值对应一个编号(键),可以通过键找到对应的值。

关系型DBMS和非关系型DBMS

对于关系型DBMS来说,SQL是一种通用的语言,也就是所有关系型DBMS中基础的SQL都是合法的。但对于非关系型DBMS而言,其语言不是互通的。

根据SQL的用途可以将SQL分为五个大类

Data Definition Language(DDL):数据定义语言,用来定义数据库对象。比如创建、修改、删除数据库、表、列等。注意,这里的操作仅针对库、表和列本身,而不针对其中存储的数据。

Data Manipulation Language(DML):数据操作语言,用来定义数据库数据。比如插入、修改、删除数据。

Data Control Language(DCL):数据控制语言,用来定义访问权限和安全级别。比如授予、收回某一用户对数据库的查询、修改、更新等权限。

Data Query Language(DQL):数据查询语言,用来查询数据。

Transaction Control Language(TCL):事务控制语言,用来对事务进行操作的语言。所谓事务,简单来说就是一组SQL语句,这样一组语句不可分割,组成一个完整的事务。

2. 数据分析师应该学习SQL的哪些部分

学习不仅需要持续的努力,还是一种可以练习的技巧,有针对性的学习可以在最短的时间内达到自己定下的目标,这也是我一直在践行,以及一直在改进的学习方式。

那么对于想要转行数据分析岗位的人来说,如何能够做到快速精准地学习SQL呢?

首先,虽然非关系型DBMS可能在特定的情况下性能更好,关系型DBMS仍然在各个行业中被广泛使用,而基础的SQL可以直接套用到所有关系型DBMS之中,因此一开始学习关系型DBMS通用的SQL的性价比更高。

当然,如果希望进入一个明确的行业或是公司,建议还是先对该行业做一个比较全面的了解,至少需要知道他们是否使用SQL,或是否有一个常用的非关系型DBMS,并针对性的学习。

第二,数据分析师的主要工作是找到数据中潜藏的商业价值,也就是说并不需要对数据库中的数据进行修改,更不会涉及到增加和删除的操作,因此主要的学习方向是SQL的数据查询语言(DQL)。

另外,对于初学者而言,也可以了解一些数据定义语言(DDL)和数据操作语言(DML),这样可以在自己的电脑上建立一个简单的数据库,并随时练习DQL。

3. 学习资源推荐

SQL相对来说是一门比较简单的语言,上手还是比较快的,网络上的视频教学资源还是很多的,这里就推荐一个我当时用来学习的SQL资源,从第243集开始看到第326集基本上就能对SQL的DQL有一个基本了解了。

https://www.bilibili.com/video/BV12b411K7Zu?from=search&seid=4481585889569838463​www.bilibili.com

当然,真正在工作中,因为不同的公司使用不同的DBMS,而不同的DBMS除了通用的SQL语言外,还会有一些差异化的语言,比如我之前实习的公司用的是Impala,而其它部门则用的是Oracle,因此有时候还需要将一些函数和语法进行转换,才能在Impala上运行。

所以如果有目标公司,最好是能够调查一下他们具体用的DBMS是什么,再进行更加针对性的学习。

4. 练习网站推荐

这里就推荐一个我最开始学习时用的练习网站:SQLZoo

SQLZOO​igs.sqlzoo.net

这个网站从最基本的select到join都有习题,全部做完就算入门了。

不过真正工作中的SQL语句比SQLZoo中的练习要复杂得多,因此不要把SQLZoo做完就结束了,因为面试中很可能会让你当场做几道SQL的题,这时熟练程度就极其重要,面试官一眼就能看得出来你是否真的熟悉SQL语句。

当时我做SQLZoo的答案已经记录下来,当然题目可能会有不同的解法,尽量自己做对,实在做不出来再看答案,研究答案中的逻辑。

SQLZoo题目及答案:

上半部分:

舟晓南:SQLZoo题目及答案上半部分 | 数据分析学习历程全记录

包含

select basics;select from world;select from nobel;select in select;sum and count

的题目和答案

下半部分:

舟晓南:SQLZoo题目及答案下半部分 | 数据分析学习历程全记录

包含

sqlzoo join;more join;use NULL;self join

的题目和答案

其他关于数据分析的文章

如何转行和学习数据分析:

舟晓南:如何转行和学习数据分析 | 工科生三个月成功转行数据分析心得浅谈

数据分析简历如何写:

舟晓南:求职数据分析师岗位,简历应该如何写?|工科生三个月成功转行数据分析心得浅谈

需要SQL学习资料可私信~

终身学习社群正式启动~

在这里会分享各种自我提升的理念和技巧,包括时间管理,投资理财,学习技术,睡眠管理等等~

详情可以私信,一起进步吧!

写于家中

2020-8-5

sql 列转行_转行数据分析师如何开始学习SQL | 工科生三个月转行数据分析学习心得...相关推荐

  1. 零基础学sql要多久_零基础小白如何迈出学习SQL的第一步?文科生学SQL的心得

    本文适用对象:从没接触过编程的零基础小白 首先,判断是否需要学习SQL 学习的第一步:了解SQL的用途. 比如你的目的是处理小量数据,那么excel就能满足需求,且excel简单易学,适用性广,这种情 ...

  2. 数据分析师能用到mysql_浅谈数据分析师的必备技能SQL

    一.了解SQL的必要性 俗话说"巧妇难为无米之炊",没有数据怎么分析.而SQL对于你来说就好比电脑的键盘鼠标,虽说没有了它也能照常运行,但对使用它的人来说灵活性却下降了许多.而这一 ...

  3. 数据分析师就业前景怎么样?零基础能成为数据分析师吗?

    鉴于近几年这大数据行业越来越火,不少小伙伴就想转行成为数据分师,那数据分析师就业前景怎么样?零基础能成为数据分析师吗? 1.数据分析师就业前景怎么样?行业人才饱和度如何? 首先,想通过成为数据分析师赢 ...

  4. 数据分析师的基本素养——论如何成为一名数据科学家 Part 1

    https://yq.aliyun.com/articles/69441?spm=5176.100239.bloglist.39.xWRlR1 第二部分 https://yq.aliyun.com/a ...

  5. 数据分析师,今年无情被辞:想给数据人提个醒!!

    被<经济学杂志>誉为"新石油"的数据分析师,成了近年来各企业争抢的香饽饽.像阿里.腾讯.华为等大厂,给出的年薪甚至接近百万. 但现实中更多的分析师被称为"数据 ...

  6. 数据分析师需要重点学习什么技能?

    大家都知道,数据分析师是需要学习很多的知识,大家进行数据分析知识学习的时候需要对数据分析知识有一个清晰的知识体系,重点学习其中的重点知识就能节约时间从而更高效地开始数据分析师的职业成长生涯.那么大家知 ...

  7. 如何成为数据分析师之课程学习篇

    大数据时代已经在悄然间来临了,大数据的飞速发展也为我们提供了更多的工作机会,数据分析师就是其中之一.顾名思义,数据分析师就是对数据进行分析处理,并得出相应结论,从而对企业的发展决策提供帮助的一种岗位. ...

  8. kettle从入门到精通_数据分析师的全景职业规划,入门、转行都先看这篇

    今天想写这个文章,是对我所见所闻的梳理,作为一个在数据领域从业近10年的老人,我开通头条号及公众号以来,拥有了庞大的粉丝群体,也让我接触到了这个行业各式各样的人群,以及来自粉丝们的五花八门的问题. 日 ...

  9. 数据分析师对年龄有限制吗?现在转行还来得及吗?

    CDA数据分析师原创作品,转载需授权 2014年,"大数据" 成为国内年度热词,并首次出现在当年的<政府工作报告中>,同年,同卵双胞胎的数据分析也成为朝阳行业,数据分析 ...

  10. asp点击按钮sql列求和_助你2020晋级互联网大数据阵营(一):轻轻松松学SQL

    毫不负责任的说,你和数据科学家最大的鸿沟,就差一个SQL语言:)入门后,后面的事情就简单了 为了帮大家尽快入门Hive SQL.学会提数和分析,实现在大数据领域大干一场的愿望,帮你准备好了数据,准备好 ...

最新文章

  1. 为CentOS添加网络yum源
  2. VB.NET 创建WORD文档
  3. 如何用python进行相关性分析_如何在python中检查连续变量和分类变量之间的相关性?...
  4. MATLAB数据分析
  5. html读取servlet,简单html与servlet交互(HTML利用servlet读取txt)
  6. 让我们揭穿有关学习编码的主要神话
  7. css实现强制不换行/自动换行/强制换行
  8. Android TabHost和xml定义Menu应用
  9. verilog中的定点数、浮点数、定点小数、定点整数的表示及运算
  10. php echo substr('hello',1,-2);-2是什么意思 为什么结果是 el
  11. mysql实现主从复制的方式_mysql实现主从复制、读写分离的配置方法(二)
  12. 学生宿舍管理系统C语言大作业,C语言程序设计---学生宿舍管理系统
  13. 怎么使用水经注万能地图下载器制作百度行政区划个性化地图
  14. Matlab中的基本绘图操作,Matlab中如何绘图
  15. 转载 计算广告 03
  16. 文本特征提取和向量化
  17. python把英语句子成分字母_(完整版)英语句子成分分析(最完整版)
  18. 深度学习与神经网络的关系
  19. 计算机系统最重要的是什么,操作系统最重要的两个作用是什么
  20. 基于ABP的AppUser对象扩展

热门文章

  1. 【路径规划】基于matlab蚁群算法求解机器人栅格地图最短路径规划问题【含Matlab源码 1580期】
  2. 【TWVRP】基于matlab遗传算法求解带时间窗的外卖配送车辆路径规划问题【含Matlab源码 1416期】
  3. 【聚类分析】基于matlab GUI K-means聚类分析【含Matlab源码 791期】
  4. 【OFDM通信】基于matlab OFDM通信系统仿真【含Matlab源码 315期】
  5. 【幅度调制】基于matlab GUI语音幅度调制【含Matlab源码 292期】
  6. 【图像去噪】基于matlab GUI中值滤波图像去噪【含Matlab源码 205期】
  7. mysql 回滚_【133期】面试官:你说熟悉MySQL事务,那来谈谈事务的实现原理吧!...
  8. detr 历史解析代码_视觉/ DETR变压器
  9. linux汇编section标签,Linux内核中常用的汇编
  10. python tqdm模块的简单使用