built in functions 内置函数,顾名思义是内部的函数,所谓内部主要是指解析器内部。通俗的讲就是我们用什么语言或者什么工具它自带的一些具有某些快速计算逻辑的方法或者函数。hive sql同样也具有很多这样的内置函数,笔者不对所有的内置函数做罗列,我们拿具体的数据来展示效果。
我们在以前的文章中对于hive sql 的一些内置方法也有过简单的介绍,比如与数据行号相关的方法。
背景介绍
字段名 | 注释 |
article_id | 文章ID |
height | 屏高 |
position | 页面位置 |
duration | 阅读时长 |
scoll_number | 滚屏次数 |
words_number | 文章字数 |
截取hive table的部分字段来运用内置函数来计算对应数据的科学计数效果

平均值、最大值和最小值
SELECT MIN(scoll_number) min_value
,MAX(scoll_number) max_value
,AVG(scoll_number) avg_value
,SUM(scoll_number) total_value
,COUNT(scoll_number) count_value
FROM ads_recommend_article_statistic
;
min_value | max_value | avg_value | total_value | count_value |
0 | 116 | 7.366729678638942 | 3897 | 529 |
方差、协方差、N位值、相关系数
SELECT STDDEV(scoll_number) stddev_value, --标准差
STDDEV_SAMP(scoll_number) samp_value --标准差 精度更细,小量数据计算
,var_samp(scoll_number) var_value --方差
,covar_pop(scoll_number, words_number) covar_value -- 协方差
,percentile(scoll_number, 0.4) percent_value --4分位值
,percentile(scoll_number, 0.5) percent_value --中位值
,corr(scoll_number, words_number) corr_value --皮尔逊系数
FROM ads_recommend_article_statistic

方差公式:
m为x1,x2...xn数列的期望值(平均数)
s^2 = [(x1-m)^2 + (x2-m)^2 + ... (xn-m)^2]/n
s即为标准差
s^2为方差。