一、所謂SQL
SQL (Structured Query Language) 是具有數(shù)據(jù)操縱和數(shù)據(jù)定義等多種功能的數(shù)據(jù)庫(kù)語(yǔ)言,這種語(yǔ)言具有交互性特點(diǎn),能為用戶提供極大的便利,數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)充分利用SQL語(yǔ)言提高計(jì)算機(jī)應(yīng)用系統(tǒng)的工作質(zhì)量與效率...巴拉巴拉。相信大家對(duì)SQL語(yǔ)言都有一定的認(rèn)知,這里就不多贅述了。
二、常用語(yǔ)句
1、SELECT all columns with LIMIT
數(shù)據(jù)分析過程中,我們常常會(huì)有對(duì)數(shù)據(jù)的內(nèi)容或格式做預(yù)覽的需求,在不明確查詢要求的情況下,通常會(huì)做SELECT *操作來執(zhí)行全部結(jié)果,LIMIT n命令可以幫助我們獲取到之行結(jié)果的前n條,減少執(zhí)行時(shí)間和內(nèi)存。
2、Distinctclause
Distinct可以對(duì)查詢字段的執(zhí)行結(jié)果Unique,如下
未執(zhí)行Distinctclause:
執(zhí)行Distinctclause:
3、joins
包括笛卡爾積、內(nèi)積、外積、Self Join等。具體使用方法如下
linner join可以輸出兩個(gè)表或者更多表中共同的行,類似數(shù)學(xué)中的韋恩圖,取兩個(gè)集合的交集
lLeft join僅僅輸出左邊表中的所有行,輸出結(jié)果中右邊表不存在的值為Null
lRight join僅僅輸出右邊表中的所有行,輸出結(jié)果中左邊表不存在的值為Null
4、Case When clause
可以讓我們根據(jù)現(xiàn)有的數(shù)據(jù)生成一些新的列,類似于Python中的if-else語(yǔ)法。
例如,基于salary字段條件生成新列”salary_rank”
5、Sub-queries
即子查詢,如下查詢所有工資高于‘王大’的人的全部字段
6、Ranking functions
lrow_nubmer(),這個(gè)排序函數(shù)的特點(diǎn)是相同數(shù)據(jù),先查出的排名在前,沒有重復(fù)值。先查出來的數(shù)據(jù)的rank排名優(yōu)先。partition by相當(dāng)于分組查詢。desc是降序
lBTW-說下rank()和row_nubmer()的區(qū)別,rank()函數(shù)是跳躍排序,相同數(shù)據(jù)排名相同,比如并列第1,則兩行數(shù)據(jù)都標(biāo)為1,下一位將是第3名.中間的2會(huì)被直接跳過。排名會(huì)有重復(fù)值
7、Analytic functions
即分析函數(shù),常用的有:
lfirst_value和last_value取的是排序后的數(shù)據(jù)截止當(dāng)前行的第一行數(shù)據(jù)和最后一行數(shù)據(jù)
lLag和Lead分析函數(shù)可以在一次查詢中取出當(dāng)前行后N行和前N行的數(shù)據(jù)。第一個(gè)參數(shù)為列名,第二個(gè)參數(shù)為往后/前第n行(可選,默認(rèn)為1),第三個(gè)參數(shù)為默認(rèn)值(當(dāng)往上第n行為NULL時(shí)候,取默認(rèn)值,如不指定,則為NULL)
8、Aggregate functions
即聚合函數(shù),SUM, AVG, MAX, MIN, COUNT等。
需要注意的是聚合函數(shù)需要通過‘group by’分組,確定最小聚合維度
9、Union & union all
lUnion & union all二者都是對(duì)多個(gè)列數(shù)、列名、列字段類型相同的數(shù)據(jù)集進(jìn)行組合,產(chǎn)出成一個(gè)數(shù)據(jù)集的function
l區(qū)別是union會(huì)對(duì)結(jié)果數(shù)據(jù)集進(jìn)行去重,相當(dāng)于distinct,而union all會(huì)做全部結(jié)果集并集產(chǎn)出,不會(huì)去除重復(fù)行
union示例:
union all示例:
審核編輯:劉清
-
SQL
+關(guān)注
關(guān)注
1文章
753瀏覽量
44032 -
python
+關(guān)注
關(guān)注
55文章
4767瀏覽量
84375
原文標(biāo)題:SQL速成秘籍-常用語(yǔ)句篇
文章出處:【微信號(hào):海馬硬件,微信公眾號(hào):海馬硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論