hive函数

hive函数详解----条件函数详解

泪湿孤枕 提交于 2020-04-07 17:19:05
条件函数 1. If 函数 : if 语法: if(boolean testCondition, T valueTrue, T valueFalseOrNull) 返回值: T 说明: 当条件testCondition为TRUE时,返回valueTrue;否则返回valueFalseOrNull 举例: hive> select if(1=2,100,200) from lxw_dual; 200 hive> select if(1=1,100,200) from lxw_dual; 100 2. 非空查找函数 : COALESCE 语法: COALESCE(T v1, T v2, …) 返回值: T 说明: 返回参数中的第一个非空值;如果所有值都为NULL,那么返回NULL 举例: hive> select COALESCE(null,'100','50′) from lxw_dual; 100 3. 条件判断函数: CASE 语法: CASE a WHEN b THEN c [WHEN d THEN e]* [ELSE f] END 返回值: T 说明:如果a等于b,那么返回c;如果a等于d,那么返回e;否则返回f 举例: hive> Select case 100 when 50 then 'tom' when 100 then 'mary'else 'tim' end

hive 常用函数

烂漫一生 提交于 2020-02-05 07:14:00
1.日期比较函数: datediff 语法: datediff(string enddate,string startdate) 返回值: int 说明: 返回结束日期减去开始日期的天数。 举例:hive> select datediff('2016-12-30','2016-12-29'); 返回1 2.日期增加函数: date_add 语法: date_add(string startdate, intdays) 返回值: string 说明: 返回开始日期startdate增加days天后的日期。 举例:hive>select date_add('2016-12-29',10); 返回2017-01-08 3.日期减少函数: date_sub 语法: date_sub (string startdate,int days) 返回值: string 说明: 返回开始日期startdate减少days天后的日期。 举例:hive>select date_sub('2016-12-29',10); 返回2016-12-19 查询近30天的数据select * from table where datediff(current_timestamp,create_time)<=30; create_time 为table里的字段,current_timestamp 返回当前时间

hive

删除回忆录丶 提交于 2020-01-30 09:47:35
hive架构 Hive 内部预置了很多函数,Hive 的执行计划就是根据 SQL 语句生成这些函数的 DAG(有向无环图),然后封装进 MapReduce 的 map 和 reduce 函数中。 其中MetaStore一般对应的是关系型数据库,其中存入hive表的元信息,Compiler负责对提交的hive查询语句进行语法的解析。 来源: CSDN 作者: 苗小哥 链接: https://blog.csdn.net/mlsoftware/article/details/104109433

05hive函数

一世执手 提交于 2020-01-26 11:50:47
一. 系统内置函数 1)查看系统自带的函数 hive> show functions; 2)显示自带的函数的用法 hive> desc function upper; 3)详细显示自带的函数的用法 hive> desc function extended upper; 二. 自定义函数 1.分类 1.1 用户自定义函数类别分为以下三种: (1)UDF(User-Defined-Function) 一进一出 (2)UDAF(User-Defined Aggregation Function) 聚集函数,多进一出 类似于:count/max/min (3)UDTF(User-Defined Table-Generating Functions)一进多出 如 lateral view explore() 1.2官方文档地址 https://cwiki.apache.org/confluence/display/Hive/HivePlugins 1.3 编程步骤 (1)继承 org.apache.hadoop.hive.ql.UDF (2)需要实现 evaluate 函数;evaluate 函数支持重载; (3)在 hive 的命令行窗口创建函数 a)添加 jar add jar linux_jar_path b)创建 function create [temporary]

HIVE-常用函数

大城市里の小女人 提交于 2020-01-26 03:17:06
空值赋值 nvl函数 nvl(列名1, replace_with): 如果列名1为空值, 则replace_with的内容代替,此处可以为一个固定的值, 也可以是别的列名。 select nvl ( name1 , name2 ) from table_name 或 select nvl ( name1 , 'zhangsan' ) from table_name 如果name1 为 NULL , 则只用name2替代,如果name2还是 NULL , 则就是空; # hive不支持这样写, 只能写2个 select nvl ( name1 , name2,name3 ) from table_name 时间函数 时间格式化 select date_format ( '2019-12-29' , 'yyyy-MM' ) date_format是只接受yyyy - MM - dd 格式的日期 时间相加减 select date_add ( '2019-12-29' , 1 ) select date_add ( '2019-12-29' , - 1 ) select date_sub ( '2019-12-29' , 1 ) select date_sub ( '2019-12-29' , - 1 ) select datediff ( '2019-12-29' , '2019-12

Hive函数大全

时光总嘲笑我的痴心妄想 提交于 2020-01-24 00:32:25
Hive函数大全 现在虽然有很多SQL ON Hadoop的解决方案,像Spark SQL、Impala、Presto等等,但就目前来看,在基于Hadoop的大数据分析平台、数据仓库中,Hive仍然是不可替代的角色。尽管它的相应延迟大,尽管它启动MapReduce的时间相当长,但是它太方便、功能太强大了,做离线批量计算、ad-hoc查询甚至是实现数据挖掘算法,而且,和HBase、Spark都能整合使用。 如果你是做大数据分析平台和数据仓库相关的,就目前来说,我建议,Hive是必须的。 很早之前整理过Hive的函数,不过是基于0.7版本的,这两天抽时间更新了下,基于Hive0.13,比之前的完整了许多。 整理成文档,希望能给Hive初学者和Hive使用者有所帮助。,大家可关注weixin公众号:大数据技术工程师 有更多大数据精彩内容等你来看,还有大数据学习资料免费领取哦,回复关键字即可。 Hive函数大全 目录: 一、关系运算: 1. 等值比较: = 2. 等值比较:<=> 3. 不等值比较: <>和!= 4. 小于比较: < 5. 小于等于比较: <= 6. 大于比较: > 7. 大于等于比较: >= 8. 区间比较 9. 空值判断: IS NULL 10. 非空判断: IS NOT NULL 10. LIKE比较: LIKE 11. JAVA的LIKE操作: RLIKE 12.

【Hive】hive函数

≯℡__Kan透↙ 提交于 2020-01-18 09:39:17
文章目录 hive函数 hive内置函数 1. 查看内置函数 2. 测试内置函数快捷方式 3. 内置函数列表 3.1 关系运算: 3.2 数学运算: 3.3 逻辑运算: 3.4 复合类型构造函数 3.5 复合类型操作符 3.6 数值计算函数 3.7 集合操作函数 3.8 类型转换函数 3.9 日期函数 3.10 条件函数 3.11 字符串函数 3.12 混合函数 3.13 XPath 解析 XML 函数 3.14 汇总统计函数(UDAF) 3.15 表格生成函数 Table-Generating Functions (UDTF) hive自定义函数UDF 1. 自定义函数步骤 2. Json数据解析UDF开发 2.1 get_json_object 2.2 Transform 实现 hive函数 官方链接: https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF hive内置函数 1. 查看内置函数 # 查看内置函数 show functions ; # 显示函数的详细信息: desc function abs ; # 显示函数的扩展信息: desc function extended concat ; 2. 测试内置函数快捷方式 直接使用 hive > select concat ( 'aa' ,

数据处理奇技巧——hive篇

自古美人都是妖i 提交于 2020-01-17 06:02:48
1、pmod(int a, int b):返回a除以b的余数的绝对值; cast(aaa as int):将string转化成int; cast(aaa as decimal(10, 2)):将string转化成float,保留两位小数; 2、trim(String A):去除A两侧的空格; ltrim(String A):去除左边空格; rtrim(String A):去除右边空格 select trim('abc') from lxw_dual; 3、concat_ws (separator,str1,str2,...) :根据固定的分隔符连接后侧字符串; concat_ws第一个参数是其它参数的分隔符,分隔符的位置放在要连接的两个字符串之间,分隔符可以是一个字符串,也可以是其他参数。 select concat_ws(',','11','22','33');  11,22,33 4、collect_list/collect_set列转行函数: 在本地文件系统创建测试文件: 存储在hive表中: 按用户分组,取出每个用户每天看过的所有视频的名字: 上面结果中,由于霸王别姬李四看了两遍,所以列表中存在重复,去重处理collect_set() 突破group by限制: 还可以利用collect来突破group by的限制,hive中在group

hive操作规范

筅森魡賤 提交于 2020-01-08 11:05:10
1.简述 Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据。而mapreduce开发人员可以把自己写的mapper 和reducer 作为插件来支持Hive 做更复杂的数据分析。 它与关系型数据库的SQL 略有不同,但支持了绝大多数的语句如DDL、DML以及常见的聚合函数、连接查询、条件查询。HIVE不适合用于联机online)事务处理,也不提供实时查询功能。它最适合应用在基于大量不可变数据的批处理作业。 HIVE的特点:可伸缩(在Hadoop的集群上动态的添加设备),可扩展,容错,输入格式的松散耦合。 Hive 的官方文档中对查询语言有了很详细的描述,请参考:http://wiki.apache.org/hadoop/Hive/LanguageManual 。 2. HIVE SQL语法规则 2.1 数据类型 2.1.1 整型 TINYINT – 1字节整数 SMALLINT – 2字节整数 INT – 4字节整数

hive常用字符串函数

冷暖自知 提交于 2020-01-04 00:27:43
hive常用字符串函数 语法: instr(string A,string B) 返回值: int 说明:返回字符串B在字符串A的位置,不存在返回0 举例: select instr(‘abcd’,‘a’) 1 select instr(‘abcd’,‘t’) 0 语法: length(string A) 返回值: int 说明:返回字符串A的长度 举例: hive> select length(‘abcedfg’) from dual; 7 字符串反转函数:reverse 语法: reverse(string A) 返回值: string 说明:返回字符串A的反转结果 举例: hive> select reverse(‘abcedfg’) from dual; gfdecba 字符串连接函数:concat 语法: concat(string A, string B…) 返回值: string 说明:返回输入字符串连接后的结果,支持任意个输入字符串 举例: hive> select concat(‘abc’,‘def’,‘gh’) from dual; abcdefgh 带分隔符字符串连接函数:concat_ws 语法: concat_ws(string SEP, string A, string B…) 返回值: string 说明:返回输入字符串连接后的结果