您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)hive有哪些聚合函數(shù),小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
★聚合函數(shù)
count,sum,min,max,avg
var_pop(col) 返回指定列的方差
var_samp(col) 返回指定列的樣本方差
stddev_pop(col) 返回指定列的偏差(標(biāo)準(zhǔn)差) stddev_pop = stddev
stddev_samp(col) 返回指定列的樣本偏差(標(biāo)準(zhǔn)差)
covar_pop(col1, col2) 兩列數(shù)值協(xié)方差
如果兩個變量的變化趨勢一致,那么兩個變量之間的協(xié)方差就是正值;
如果兩個變量的變化趨勢相反,那么兩個變量之間的協(xié)方差就是負(fù)值;
如果X與Y是統(tǒng)計獨立的,那么二者之間的協(xié)方差就是0
covar_samp(col1, col2) 兩列數(shù)值樣本協(xié)方差
corr(col1, col2) 返回兩列數(shù)值的相關(guān)系數(shù)(偏差協(xié)方)
percentile(BIGINT col, p) 返回數(shù)值區(qū)域的百分比數(shù)值點。0<=P<=1,否則返回NULL,不支持浮點型數(shù)值。
第p百分位數(shù),大約有p%的數(shù)據(jù)項的值比第p百分位數(shù)小
percentile(BIGINT col, array(p1 [, p2]…))
返回類型也為array<double>,其中為對應(yīng)的百分位數(shù)
percentile_approx(DOUBLE col, p [, B]) 近似中位數(shù)函數(shù)(percentile的近似值)
參數(shù)B控制內(nèi)存消耗的近似精度,B越大,結(jié)果的準(zhǔn)確度越高。默認(rèn)為10,000。
當(dāng)col字段中的distinct值的個數(shù)小于B時,結(jié)果為準(zhǔn)確的百分位數(shù)
percentile_approx(DOUBLE col, array(p1 [, p2]…) [, B])
histogram_numeric(col, b) 直方圖,
使用b個非均勻間隔的箱子計算組內(nèi)數(shù)字列的柱狀圖(直方圖),
輸出的數(shù)組大小為b,double類型的(x,y)表示直方圖的中心和高度
返回值: array<struct {‘x’,‘y’}> [{"x":100.0,"y":1.0}]
select inline(histogram_numeric(cast(a.amount as int),10)) from a
collect_set(col) 返回消除了重復(fù)元素的數(shù)組
collect_list(col) 返回允許重復(fù)元素的數(shù)組
ntile(INTEGER x) 該函數(shù)將已經(jīng)排序的分區(qū)分到x個桶中,并為每行分配一個桶號
★內(nèi)置 Table-Generating函數(shù)(UDTF)
explode(ARRAY) 參數(shù)列為數(shù)組類型,將數(shù)組數(shù)據(jù)中的每個元素做為一行返回
explode(MAP) 將輸入map中的每個鍵值對轉(zhuǎn)換為兩列,一列為key,另一列為value,然后返回新行
explode(array<TYPE> a) 對于數(shù)組a中的每個元素,該函數(shù)產(chǎn)生包含該元素的行
json_tuple(jsonStr, k1, k2, ...) 參數(shù)為一組鍵k1,k2……和JSON字符串,返回值的元組。
該方法比 get_json_object 高效,因為可以在一次調(diào)用中輸入多個鍵
parse_url_tuple(url, p1, p2, ...) 該方法同parse_url() 相似,但可以一次性提取URL的多個部分,
有效的參數(shù)名稱為: HOST, PATH, QUERY, REF, PROTOCOL, AUTHORITY, FILE, USERINFO, QUERY:<KEY>
posexplode(ARRAY) 行為與參數(shù)為數(shù)組的explode方法相似,但包含項在原始數(shù)組中的位置,返回(pos,value)的二元組
stack(INT n, v_1, v_2, ..., v_k) 將v_1, ..., v_k 分為n行,每行包含n/k列,n必須為常數(shù)
●在SELECT中不允許再有其他表達式:不支持SELECT pageid, explode(adid_list) AS myCol...
●UDTF不能夠嵌套使用:不支持SELECT explode(explode(adid_list)) AS myCol...
●不支持GROUP BY /CLUSTER BY / DISTRIBUTE BY / SORT BY
關(guān)于“hive有哪些聚合函數(shù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。