了解技术行业最需要的技能!
Image by Tumisu from Pixabay
介绍
所以您想学习SQL? 太好了,你应该!
您是否知道,这是数据分析师和数据工程师最需要的第一技能,而数据科学家则是第三要的技能?
在本文中,我将S & P b向您解释如何以最简c b K B y _ 4 +单的方式使用SQLQ a - J L $查询。 但首先,u E q O让我定义几个术语……
如果您喜欢这种东西,请@ v N 6 )成为第一个在这里订阅我的新You, ? Z l 5 g tTube频道的人! 尽管还没有任| = N何视频,但我将以视频的形式分享很多令人赞叹的内容,像这样。 谢谢您的支持 :)
定义
行,也称为记录,是代表单个实体的属性(变量)的集合。 例如,一行可能代表一名医院患者,并且可能具有属性/变量,例如年e # . b )龄,体重,身高等。
表是具有相同属性(/ u -具有相同变量)的行的集合s # G Q w 2 B。 最能帮助我的是将表格视为Excel表格。
example of a table
查询是从数据库表或表组合中获取数据的请求。 如果要查找所有23岁以上的患者,y ` [ I 3 / X请t q t ? e使用上表进行查询。
如) & O F n , v g *何编写SQL
由e r N % F 4 于这是面向初学者的教程e 9 X 7 h,因此,我将向% q f - 6 H +您展示如& = 3 `何从一个表中提取数据时如何编写查询。
基本查询包含五个组件:? n T 8 y d
SELECT(必填)m P 5 ? W q 3
FROM(强制性)
在哪里(可选)
GROUP BY(可z I 0 L s = J选)
ORDER BY(可选)
结构如下:
SELECT [columnp E C G T , t 3_name_1], [column_n! & Dame_2], [column_name_n]FROM [table_name]WHEw d y L B ` / l sRE [{ X k f z i | jcondition 1]GROUP BY [column_name] ORDER BY [column_name]
让我C a g I q u P j 1们带回我的示例作为[ a P参n 3 x考:
1.SELECT(必填)
SELECT确定要从给定表a v W X u R b中提取G : P 4 r K y P ;哪些列。 例如,如果我想提取名称,那么我的代码将如下所示:
SELECT Name
一个巧妙的技巧是,如果要提取所有列,可以使用星号-参见下文:
SELECT *
2.FROM(必填)
FROM确定要从中提取信息的表。 例如,如果您要提取患者G 0 x . y } S的姓名k a @ v,则需要从名为Patient_info的表中提取数据(q k b ] e请参见上文)。 代码看起来像这样:
SELECT NameFROM patient_ie E K }nfo
这是您的第一个功能查询! 让我们完成另外3个可选步骤。
3. W~ O h & DHERE(可选)
如果要选择23岁以上患者的姓名怎么办? 这是WHERE传入的时间。WHERE是用于过滤表的语句,与在Excel中使用过滤工具的方式相同!
左侧是获取23岁以上患者姓名的代码。 右侧显示了一个直观的表示形式:
如果希望满足两个子句的患者姓名,可以使用AND。 例如。 查找年龄超过5 c P h E @ ` =23磅且体重超过130磅的4 A a _ p z患者的姓名。
SELEY s K : ,CT NameFROM patient_infoWHERE Age+ a B D } V @ P > 23 AND Weight_lbs > 130
如果要满足两个子句之一的患者姓名,可以使用OR。 例如。 查找22岁以下或23岁以上的患/ z ` W R者的姓名。
SELECT NameFROM patie6 C ]nt_infoWHERE Age < 22 OR Age > 23
4. GROUP BY(可选)
GROUP BY会执行它所说的—将具有相同值的行分组为摘要行n k 5 y。 它通常与诸如COUNT,MIN,MAX,SUM,AVG之类的聚合函数一起使用。
让我们使用下面的示例:
如果我们想获取每位患者的医院就诊次数,则2 , 0 可以使用下面的代码并获得以下结果:
5. ORDER BY(可选)
ORDER BY使您可以基于特定属性或多个属性h C &以升序或降序对结果进行排序。 让我们9 * V举个例子。
SELECT *FROM patient_infoORDER BY Age asc
\" ORDER BY Age asc\"表示您的结果集将L c v Y按年龄按升序对行进行排序(请参见上图中的左表)。 如果要按降序排列(上图中的右表),则将desc替换为asc。
结x { A ) Y e论
这就是您构造查询的方式! 您刚刚学会了技术界最需要的技能之一。 我将在下面提供一些链接,您可以在其中练习SQL技能。 请享用!
(本文翻译自Terence Shin的文章《Learn Beginner SQL in 5 steps in 5 minutes!》,参考:https://towardsdatascience.com/learn-beginner-sql-in-5-se L k / @ 5 4 . uteps-in-5-minutes-c44c47fa39a1)