作为一名数据分析师,我整天编写SQL查询。我的任务之一是充当公司数据库和需要随时使用数据的同事之间的翻译。根据他们的需求定制提取的数据后,他们就能够进行自己的分析并得出面向业务的结论。与对数据一无所知的同事一起工作,我发现拥有SQL的基本知识——或者在工作中获得它——通常会让他们受益。

如果你处于类似的职位,比如与负责公司数据库的数据分析师或技术团队打交道,或者如果你认识这样的人并且想更多地了解SQL是什么,以及为什么它在数据处理中如此重要,那么本文就是为您准备的。

SQL简介

SQL代表结构化查询语言。它是一种用于管理存储在关系数据库管理系统(RDBMS)中的数据的编程语言。在本文中,我将重点关注查询,这是SQL中最常见的操作。他们的职责是翻译诸如“您能告诉我昨天与该客户进行的交易吗?”之类的说明。 提取(可能非常大)数据库的摘录。

这里有一个例子。假设我的公司的数据库由5个表组成:

  • “交易表”记录了我公司每天所做的所有交易
  • “卫生产品表”和“食品产品表”列出了我们销售的产品
  • “个人客户表”和“专业客户表”是客户登记册

要回答“杰克在2020年11月买了什么?”我需要通过组合这五个表来找到必要的信息。

那么,为什么要学习SQL呢?

在数据分析中变得更加自主

虽然使用Microsoft Excel或谷歌Sheets就足以处理有限的数据,但也许您已经遇到过这样的情况:由于处理的数据量过大,电子表格软件假死了。事实上,SQL的第一个优点是,它可以从数据库中提取和操作大量数据,而不必逐个打开Excel表来浏览数据库。

回到上一个例子,你将有两个选项来回答这个问题:

转到每个表并查看可用的字段。要专门查找Jack和他购买的物品,您需要过滤这些表中的提取内容,以查找Jack对应的client_id,以及他购买的物品对应的产品。
编写一个SQL查询(或使用您喜欢的数据分析师编写的模板)来直接将所有5个表连接在一起。然后在WHERE子句中指定搜索条件。

这里的SQL查询看起来像这样:

SELECT *
FROM transactions AS t
LEFT JOIN hygiene_products AS hpON t.product_id = hp.product_id
LEFT JOIN food_products AS fpON t.product_id = fp.product_id
LEFT JOIN indiv_customers AS icON t.client_id = ic.client_id
LEFT JOIN prof_customers AS pcON t.client_id = pc.client_id
WHERE (ic.client_name = 'Jack' OR pc.client_name = 'Jack')AND t.purchase_date BETWEEN '2020-11-01' AND '2020-11-30'

更好地组织你的思想

即使您自己不打算成为一名数据分析师,学习SQL也是一个很好的练习,可以更好地理解您公司的数据是如何结构化的,以及通过组合各种数据源可以实现什么。SQL具有相当简单的结构(至少与其他编程语言相比),但它可以执行复杂的查询。通过自己编写查询,您将能够检索到更多的信息,最重要的是,这些信息将以一种您可以立即使用来回答问题的方式进行结构化。

在与数据分析师或技术团队的交互中,更好地理解数据库的架构,更好地理解SQL查询背后的逻辑,将使您节省宝贵的时间。在表示对数据提取的特定需求时,如果您已经知道需要什么类型的数据,那么您将赢得时间。

使用我前面的例子,有两种方法可以让你的同事检索你分析所需的数据:

“我需要一个Jack的信息,他在2020年11月买了一些产品,你能把他所有的购买清单发给我吗?”

“我需要个人客户Jack的信息,他在2020年11月购买了卫生产品,你能给我一份他的购买清单吗?”

你可以想象第二个选择可能会帮助你的同事更快地找到答案。为了说明我的例子,这是你得到这个答案的思维过程:

培养新的专业技能

根据Stack Overflow在2020年进行的一项调查,SQL是第三大最常用的编程语言。也就是说,SQL已经得到了广泛的传播,而且它很可能会继续传播,因为它是数据库管理的头号语言。无论你的公司使用的数据库技术(MySQL, PostgreSQL, Microsoft SQL Server…),他们都使用SQL或这种语言的衍生。

正如Dataquest所解释的那样,根据2021年1月在Indeed求职门户网站上进行的一项分析,SQL是数据类职位最受欢迎的技能。即使你不打算将职业重心转向全职的数据工作,更好地了解这些工作背后的内容也只会对你有所帮助——这为未来在数据领域或其他领域的机会打开了一扇门。

总结:让我们开始吧!

作为本文的结尾,我想添加最后一个参数(也是一些好消息):学习SQL是免费的。

其中,MySQL是一个开源的RDBMS,可以免费下载和安装。然后,你可以从在线课程开始——或者让你的数据分析师同事给你一个关于这个主题的快速入门课程!

作者:Marie Lefevre

deephub翻译组

非技术人员应该学习SQL的3个原因相关推荐

  1. 非线性流形学习技术_非技术人员可以学习的100件事

    非线性流形学习技术 My lovely wife has an MBA, speaks 5 languages, and is currently in school to get a third ( ...

  2. 学习sql注入:猜测数据库_对于SQL的热爱:为什么要学习它以及它将如何帮助您...

    学习sql注入:猜测数据库 I recently read a great article by the esteemed @craigkerstiens describing why he feel ...

  3. 针对开发人员的Microsoft SQL Server元数据

    Microsoft SQL Server 2016最近在关系数据库管理系统(RDBMS)中处于领先地位. 高性能,安全性,分析和云兼容性的结合使其成为领先的RDBMS . SQL Server 201 ...

  4. 学习sql注入:猜测数据库_面向数据科学家SQL:学习简单方法

    学习sql注入:猜测数据库 We don't pick a hammer and look for nails - that would be an unusual way of solving pr ...

  5. 学习SQL:将SQL Server导出到Excel

    In the previous article, Learn SQL: SQL Server Pivot Tables, we've discussed how to create a report ...

  6. 复杂sql 查询编写方法_学习SQL:如何编写复杂的SELECT查询

    复杂sql 查询编写方法 In my career, I've heard many times, things like "How to write a complex SELECT qu ...

  7. 3个问题,1套非技术人员的AI方法论 | 哈佛商业评论最新热文

    雷刚 发自 凹非寺  量子位 报道 | 公众号 QbitAI 这是一篇写给非技术人员的AI专栏. 给那些有意在公司组织.管理中寻求高效的人,那些希望走向管理岗位的人. 这篇<哈佛商业评论> ...

  8. 阿愚呱呱作为一个非技术人员,是如何做到不到3年时间成为RPA行业的一个头部IP的?

    Part1RPA帮入门训练营操作手册(问题集锦) 1禁用edge浏览器再重启 1.win+R (win是键盘最左边Ctrl和Alt之间的按键) 2.输入msconfig 3.启动 4.打开任务管理器 ...

  9. 渗透学习-SQL注入篇-基础知识的学习(持续更新中)

    提示:仅供进行学习使用,请勿做出非法的行为.如若由任何违法行为,将依据法律法规进行严惩!!! 文章目录 前言 一.SQL注入产生的原因 二.手工注入大致过程 1.判断注入点: 2.猜解列名 3.猜解能 ...

最新文章

  1. Android Studio之gradle的配置与介绍
  2. DMB DSB ISB 简介
  3. Windows破解逆向-CrackMe_1实例(使用IDA Pro修改静态区资源)
  4. JAVA中CLASS.FORNAME的含义
  5. 4款最具影响力的自助式BI工具
  6. 尚硅谷JavaWeb视频教程,新版升级
  7. python面向对象程序设计实验_实验七 面向对象程序设计
  8. php个人发卡搭建教程,个人发卡平台ZFAKA程序搭建详细教程
  9. 文件或目录损坏且无法读取的解决办法大集合
  10. 前端面试复盘:vue技术面没有难倒我,hr面却是一把挂
  11. win7计算机自动关机设置在哪里设置方法,Win7小技巧:自动关机怎么设置?
  12. matlab绘制分段函数,二维函数
  13. 简单的骨骼动画、骨骼动画理论
  14. 基于matlab GUI Powell+蚁群算法图像配准
  15. 能用四川电信卡开通的虚拟服务器,双网通手机也能用电信卡了?VoLTE开放:发短信就能开通...
  16. 019基于脑电图信号和CNN的癫痫发作检测2018
  17. 采购订单管理应该使用什么样的软件比较好
  18. 架构集一---语音连麦聊天室实现方案分析
  19. Mac常用快捷键一览
  20. 数据库的应用(三):实例举例

热门文章

  1. 显卡超频 linux arch 3090
  2. Python之父(龟叔):Python 4.0可能不会来了
  3. LeetCode:342(Python)—— 4 的幂(简单)
  4. 抖音广告创意观察报告
  5. Linux日志系统_syslog服务详解
  6. 接口报400错误解析
  7. 自然语言处理 | (6) 基于英文文本的简易情感分析
  8. 一加6安装android,一加6T安装win10操作系统,比安卓原生系统还要流畅
  9. ajax+获取mysql数据_ajax如何获取数据库数据
  10. opencv 画棋盘