介紹
所以您想學(xué)習(xí)SQL? 太好了,你應(yīng)該!
您是否知道,這是數(shù)據(jù)分析師和數(shù)據(jù)工程師最需要的第一技能,而數(shù)據(jù)科學(xué)家則是第三要的技能?
在本文中,我將向您解釋如何以最簡(jiǎn)單的方式使用SQL查詢。 但首先,讓我定義幾個(gè)術(shù)語(yǔ)……
定義
行,也稱為記錄,是代表單個(gè)實(shí)體的屬性(變量)的集合。 例如,一行可能代表一名醫(yī)院患者,并且可能具有屬性/變量,例如年齡,體重,身高等。
表是具有相同屬性(具有相同變量)的行的集合。 最能幫助我的是將表格視為Excel表格。
example of a table
查詢是從數(shù)據(jù)庫(kù)表或表組合中獲取數(shù)據(jù)的請(qǐng)求。 如果要查找所有23歲以上的患者,請(qǐng)使用上表進(jìn)行查詢。
如何編寫SQL
由于這是面向初學(xué)者的教程,因此,我將向您展示如何從一個(gè)表中提取數(shù)據(jù)時(shí)如何編寫查詢。
基本查詢包含五個(gè)組件:
· SELECT(必填)
· FROM(強(qiáng)制性)
· 在哪里(可選)
· GROUP BY(可選)
· ORDER BY(可選)
結(jié)構(gòu)如下:
SELECT [column_name_1], [column_name_2], [column_name_n]FROM [table_name]WHERE [condition 1]GROUP BY [column_name] ORDER BY [column_name]
讓我們帶回我的示例作為參考:
1.SELECT(必填)
SELECT確定要從給定表中提取哪些列。 例如,如果我想提取名稱,那么我的代碼將如下所示:
SELECT Name
一個(gè)巧妙的技巧是,如果要提取所有列,可以使用星號(hào)-參見(jiàn)下文:
SELECT *
2.FROM(必填)
FROM確定要從中提取信息的表。 例如,如果您要提取患者的姓名,則需要從名為Patient_info的表中提取數(shù)據(jù)(請(qǐng)參見(jiàn)上文)。 代碼看起來(lái)像這樣:
SELECT NameFROM patient_info
這是您的第一個(gè)功能查詢! 讓我們完成另外3個(gè)可選步驟。
3. WHERE(可選)
如果要選擇23歲以上患者的姓名怎么辦? 這是WHERE傳入的時(shí)間。WHERE是用于過(guò)濾表的語(yǔ)句,與在Excel中使用過(guò)濾工具的方式相同!
左側(cè)是獲取23歲以上患者姓名的代碼。 右側(cè)顯示了一個(gè)直觀的表示形式:
如果希望滿足兩個(gè)子句的患者姓名,可以使用AND。 例如。 查找年齡超過(guò)23磅且體重超過(guò)130磅的患者的姓名。
SELECT NameFROM patient_infoWHERE Age 》 23 AND Weight_lbs 》 130
如果要滿足兩個(gè)子句之一的患者姓名,可以使用OR。 例如。 查找22歲以下或23歲以上的患者的姓名。
SELECT NameFROM patient_infoWHERE Age 《 22 OR Age 》 23
4. GROUP BY(可選)
GROUP BY會(huì)執(zhí)行它所說(shuō)的—將具有相同值的行分組為摘要行。 它通常與諸如COUNT,MIN,MAX,SUM,AVG之類的聚合函數(shù)一起使用。
讓我們使用下面的示例:
如果我們想獲取每位患者的醫(yī)院就診次數(shù),則可以使用下面的代碼并獲得以下結(jié)果:
5. ORDER BY(可選)
ORDER BY使您可以基于特定屬性或多個(gè)屬性以升序或降序?qū)Y(jié)果進(jìn)行排序。 讓我們舉個(gè)例子。
SELECT *FROM patient_infoORDER BY Age asc
“ ORDER BY Age asc”表示您的結(jié)果集將按年齡按升序?qū)π羞M(jìn)行排序(請(qǐng)參見(jiàn)上圖中的左表)。 如果要按降序排列(上圖中的右表),則將desc替換為asc。
-
SQL
+關(guān)注
關(guān)注
1文章
775瀏覽量
44268 -
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3851瀏覽量
64717 -
變量
+關(guān)注
關(guān)注
0文章
613瀏覽量
28472
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Web安全之滲透測(cè)試基礎(chǔ)與實(shí)踐
Devart: dbForge Compare Bundle for SQL Server—比較SQL數(shù)據(jù)庫(kù)最簡(jiǎn)單、最準(zhǔn)確的方法
dbForge Studio For SQL Server:用于有效開發(fā)的最佳SQL Server集成開發(fā)環(huán)境
創(chuàng)建唯一索引的SQL命令和技巧
淺談SQL優(yōu)化小技巧
SQL與NoSQL的區(qū)別
淺析智慧儲(chǔ)能柜的構(gòu)造
![淺析智慧儲(chǔ)能柜的<b class='flag-5'>構(gòu)造</b>](https://file1.elecfans.com//web2/M00/09/09/wKgaomb1HYGAcnusAAJ8cAMyF7I128.png)
大數(shù)據(jù)從業(yè)者必知必會(huì)的Hive SQL調(diào)優(yōu)技巧
誤差放大器內(nèi)部構(gòu)造
IP 地址在 SQL 注入攻擊中的作用及防范策略
如何在SQL中創(chuàng)建觸發(fā)器
什么是 Flink SQL 解決不了的問(wèn)題?
風(fēng)華貼片電容的生產(chǎn)批號(hào)如何查詢?
SQL全外連接剖析
![<b class='flag-5'>SQL</b>全外連接剖析](https://file1.elecfans.com//web2/M00/C4/A0/wKgZomX1U7mAOuBHAAAi3aQBipE037.jpg)
評(píng)論