您好,登錄后才能下訂單哦!
本篇內容介紹了“hive統計函數合集”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
集合統計函數1. 個數統計函數: count
語法: count(*), count(expr), count(DISTINCT expr[, expr_.])
返回值: int
說明: count(*)統計檢索出的行的個數,包括NULL值的行;count(expr)返回指定字段的非空值的個數;count(DISTINCTexpr[, expr_.])返回指定字段的不同的非空值的個數
舉例:
hive> select count(*) from lxw_dual;
20
hive> select count(distinct t) from lxw_dual;
10
2. 總和統計函數: sum
語法: sum(col), sum(DISTINCT col)
返回值: double
說明: sum(col)統計結果集中col的相加的結果;sum(DISTINCT col)統計結果中col不同值相加的結果
舉例:
hive> select sum(t) from lxw_dual;
100
hive> select sum(distinct t) from lxw_dual;
70
3. 平均值統計函數: avg
語法: avg(col), avg(DISTINCT col)
返回值: double
說明: avg(col)統計結果集中col的平均值;avg(DISTINCT col)統計結果中col不同值相加的平均值
舉例:
hive> select avg(t) from lxw_dual;
50
hive> select avg (distinct t) from lxw_dual;
30
4. 最小值統計函數: min
語法: min(col)
返回值: double
說明: 統計結果集中col字段的最小值
舉例:
hive> select min(t) from lxw_dual;
20
5. 最大值統計函數: max
語法: maxcol)
返回值: double
說明: 統計結果集中col字段的最大值
舉例:
hive> select max(t) from lxw_dual;
120
6. 非空集合總體變量函數:var_pop
語法: var_pop(col)
返回值: double
說明: 統計結果集中col非空集合的總體變量(忽略null)
舉例:
7. 非空集合樣本變量函數:var_samp
語法: var_samp (col)
返回值: double
說明: 統計結果集中col非空集合的樣本變量(忽略null)
舉例:
8. 總體標準偏離函數:stddev_pop
語法: stddev_pop(col)
返回值: double
說明: 該函數計算總體標準偏離,并返回總體變量的平方根,其返回值與VAR_POP函數的平方根相同
舉例:
9. 樣本標準偏離函數:stddev_samp
語法: stddev_samp (col)
返回值: double
說明: 該函數計算樣本標準偏離
舉例:
10.中位數函數:percentile
語法: percentile(BIGINT col, p)
返回值: double
說明: 求準確的第pth個百分位數,p必須介于0和1之間,但是col字段目前只支持整數,不支持浮點數類型
舉例:
11. 中位數函數:percentile
語法: percentile(BIGINT col, array(p1 [, p2]…))
返回值: array<double>
說明: 功能和上述類似,之后后面可以輸入多個百分位數,返回類型也為array<double>,其中為對應的百分位數。
舉例:
select percentile(score,<0.2,0.4>) from lxw_dual;取0.2,0.4位置的數據
12. 近似中位數函數:percentile_approx
語法: percentile_approx(DOUBLE col, p [, B])
返回值: double
說明: 求近似的第pth個百分位數,p必須介于0和1之間,返回類型為double,但是col字段支持浮點類型。參數B控制內存消耗的近似精度,B越大,結果的準確度越高。默認為10,000。當col字段中的distinct值的個數小于B時,結果為準確的百分位數
舉例:
13. 近似中位數函數:percentile_approx
語法: percentile_approx(DOUBLE col, array(p1 [, p2]…) [, B])
返回值: array<double>
說明: 功能和上述類似,之后后面可以輸入多個百分位數,返回類型也為array<double>,其中為對應的百分位數。
舉例:
14. 直方圖:histogram_numeric
語法: histogram_numeric(col, b)
返回值: array<struct {‘x’,‘y’}>
說明: 以b為基準計算col的直方圖信息。
舉例:
hive> select histogram_numeric(100,5) from lxw_dual;
[{"x":100.0,"y":1.0}]
“hive統計函數合集”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。