Hive学习笔记(HiveQL数据查询进阶)

Hive学习笔记(HiveQL数据查询进阶),第1张

Hive学习笔记(HiveQL数据查询进阶)

Hive学习笔记(HiveQL数据查询进阶)
  • Hive内置函数
    • 数学函数
    • 字符函数
    • 转换函数
    • 日期函数
    • 条件函数
    • 聚合函数
  • Hive构建搜索引擎日志数据分析系统
    • 数据预处理(Linux环境)

Hive内置函数

Hive函数是Hive数据仓库工具帮助开发者提供的函数。

数学函数

加法‘+’函数的应用代码如下:

hive>select 10+2;


减法‘-’函数的应用代码如下:

hive>select 10-2;


乘法‘*’函数的应用,代码如下:

hive> select 10*2;


除法‘/’函数的应用,代码如下:

hive> select 10/2;

round 四舍五入函数的应用,代码如下:

hive>select round (88.947,2);

ceil向上取正函数的应用,代码如下:

hive> select ceil(88.9);


floor乡下取整的函数应用,代码如下:

hive>select floor(88.9);

pow取平方函数的应用,代码如下:

hive>select pow(3,2);


pmod取模函数,即取余数的应用,代码如下:

hive>select pmod(13,3);

字符函数

1.lower转小写函数
字符串’ABCD’转化为小写字符串‘abcd’代码如下:

hive>select lower("ABCD");


2.upper转大写函数
将字符串“abcd”转化为“ABCD”;

hive>select upper("abcd");


3.length字符串长度函数
获取字符串“hadoop”的长度,代码如下:

hive>select length("hadoop");


4.concat字符串拼接函数

完成hadoop和spark的合并

hive>select concat("hadoop","&spark");


5.substr求子串函数
substr(a,b):从字符串a中的第b位开始取,取右边所有的字符。
例:求hadoop从第三位开始取右边所有的字符,代码如下:

hive>select substr("hadoop",3);


substr(a,b,c):从字符串a中的第b位取c个字符。
6.trim去前后空格函数
trim(str)是指,将字符串str前后出现的空格剔除

hive>select trim("              hadoop            "  );


7.get_json_object用于处理json格式数据的函数

转换函数

类型转换函数cast的应用,代码如下:

hive>select cast(99 as double);
hive>select cast("2020-1-30" as date);


日期函数

使用yera、month和day分别获取年份、月份、日的函数。
to_data返回日期的时间字段中的日期部分。

hive>select to_date ("2019-9-16  14:36:40");

条件函数

case…when…是,条件表达式,语法格式为caseA when B then C [when D then E]*[else F] end。对于A来说,如果判断B则返回C如果判断为D则返回E,如果以上都不是则返回F,最后还要有一个end结束符。

hive>select ename,job,sal,case job when 'manager' then sal+2000 when 'clerk' then sal+1000 else sal+400 end from emp;

聚合函数

1.count:返回函数
例:求员工表中员工的总人数:

hive>select count(*) from emp;


2.sum:组内某列求和函数
例:求员工表员工工资总计

hive>select job,sum(sal)  from emp group by job;


3.min:组内某列最小值:
统计员工各岗位的最小工资金额,代码如下:

hive>select job,min(sal) from emp group by job;

4.max:组内某列最大值:
统计员工表中各岗位的最大工资金额,代码如下:

hive>select job,max(sal) from emp group by job;

5.avg:组内某列平均值
统计员工表中个岗位的平均工资金额,代码如下:

hive>select job,avg(sal) from emp group by job;
Hive构建搜索引擎日志数据分析系统 数据预处理(Linux环境)

引擎搜索日志数据的数据格式为:访问时间t用户IDt[查询词]t该URL在返回结果中的排名t用户点击的顺序号t用户点击的URL地址。其中ID是根据用户使用浏览器访问搜索引擎时的cookie信息自动赋值的。
1.查看数据
进入实验数据文件夹用less命令查看:

less sogou.500w.utf8

查看数据总行数的命令如下:

wc -l sogou.500w.utf8

2.数据加载
将数据加载到HDFS,命令如下:

hdfs dfs -mkdir -p /sogou/20111230
hdfs dfs -put /home/hadoop/sogou.500w.utf8  /sogou/20111230
hdfs dfs -mkdir -p /sogou_ext/20111230
hdfs dfs -put /home/sogou.500w.utf8 /sogou_ext/20111230

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/5635493.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存