数据分析人员需要掌握sql到什么程度?

学习SQL三个层次

  1. 熟悉基本的增删改查语句及函数,包括select、where、group by、having、order by、delete、insert、join、update等,可以做日常的取数或简单的分析(该水平已经超过90%非IT同事);
  2. 掌握并熟练使用高阶语法,比如集合、分组聚合、子查询、条件逻辑、字符串函数、算术函数、日期时间函数,并且知道MySQL、Oracle、SQL Server等数据库的语法差异;
  3. 熟悉如何优化SQL语句,以期达到最高查询效率,了解事务、锁、索引、约束、视图、元数据等概念,并且学会使用hive sql、spark sql、pymysql等工具;

数据分析人员最好是能达到第三个层次,这样基本可以算一个90分的sqler

如果把excel类比sql,你得玩转透视表、各种函数公式,甚至VBA,才能最大效率地赋能工作。

学习sql本身可能是枯燥的,不像游戏那样每过一个关卡就获得成就感,sql学习的前期尤其是语法阶段,需要记忆的东西比较多,比如说join、groupby、order by等函数。所以伙伴们学习的时候可以适当地给自己创造闯关打怪的场景。

除了基本的语法之外,更多的是反复练习和回顾,把复杂的数据处理场景用sql语句表达出来,这就需要一步步去训练自己。

如果想少走弯路,不妨看看一些视频课程。自制力比较差的小伙伴,跟着老师把SQL基础走一遍,效率非常高。

学习SQL五个步骤

  1. 了解什么是SQL?

SQL,全称Structured Query Language ,即结构化查询语句, 它的主要作用是设计,创建和管理关系数据库,关系数据库的表是类似excel的二维表,由行列组成,每列代表一个字段。换句话说,SQL是用于与关系数据库进行通信的编程语言。

关系数据库有很多,比如MySQl、Oracle等,每个数据库都使用自己的SQL方言,但是它们都共享相同的基本语法。

SQL的职责是管理二维表,通过语句来替代excel中那些图形化的命令。

比如同样是筛选数据,在excel中需要在列名上添加筛选,然后选择想要的字段,这是图形化的命令;SQL则是通过语句来实现筛选;

select * from table where ....

  1. 怎么学习SQL?

首先你需要了解SQL语法的基础,包括SELECT,FROM,WHERE,GROUP BY,HAVING,ORDER BY、LIMIT等。

初学者对抽象概念不太懂,可以对比excel学习SQL基本语法。

核心:select * from tableName

这句话是从某表中选择全部字段,相当于excel中的选择sheet

where相当于excel的筛选,group by相当于excel的透视表,order相当于excel的升序降序。

接着你得学习一些常用的函数:

最后掌握高级用法:

  1. 有哪些好的书籍和教程

目前市场上SQL相关的资料很多,比较火的像《SQL必知必会》、《SQL学习指南》等。

《SQL必知必会》目录

《SQL学习指南》目录

网上也有一些不错的开源教程,比如菜鸟教程、w3school等。

建议大家把一本书或一套教程啃完就可以了,一个月就能搞定。

  1. 有哪些SQL实战网站?

脱离练习学习SQL简直是要命,可能你学了大半个月,拿到一个查询需求还是无从下手,所以说实践对于SQL来说非常重要。

这里有两个方式可以练习SQL,一是自己搭建数据库,然后找题目练习,二是在SQL网站上练习

自己搭建数据库也不难,初学者可以安装mysql,然后去github上下载习题。

SQL练习的网站也不少,像SQLZOO、XUESQL、SQLBolt、leecode、牛客网等。

5 . 练习练习练习

练习是学习SQL的不二法门,只有练的足够多,你才能精通SQL!

相关推荐
岁忧41 分钟前
LeetCode 高频 SQL 50 题(基础版)之 【高级字符串函数 / 正则表达式 / 子句】· 上
sql·算法·leetcode
Tianyanxiao1 小时前
华为×小鹏战略合作:破局智能驾驶深水区的商业逻辑深度解析
大数据·人工智能·经验分享·华为·金融·数据分析
bbsh20992 小时前
WebFuture 升级提示“不能同时包含聚集KEY和大字段””的处理办法
数据库·sql·mysql·webfuture
刘 大 望11 小时前
数据库-联合查询(内连接外连接),子查询,合并查询
java·数据库·sql·mysql
火星数据-Tina13 小时前
AI数据分析在体育中的应用:技术与实践
人工智能·数据挖掘·数据分析
cookqq14 小时前
mongodb源码分析session异步接受asyncSourceMessage()客户端流变Message对象
数据库·sql·mongodb·nosql
斯特凡今天也很帅14 小时前
clickhouse常用语句汇总——持续更新中
数据库·sql·clickhouse
Theodore_102216 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
Jay Kay16 小时前
ReLU 新生:从死亡困境到强势回归
人工智能·数据挖掘·回归
Blossom.11817 小时前
使用Python和Flask构建简单的机器学习API
人工智能·python·深度学习·目标检测·机器学习·数据挖掘·flask