hive函数

Hive数据导入导出

五迷三道 提交于 2019-12-24 09:28:53
转载: https://www.cnblogs.com/fenghuoliancheng/p/10672012.html 1.5 Hive的数据存储 首先,Hive没有专门的数据存储格式,也没有为数据建立索引,用户可以非常自由的组织 Hive 中的表,只需要在创建表的时候告诉 Hive 数据中的列分隔符和行分隔符,Hive 就可以解析数据。其次,Hive 中所有的数据都存储在 HDFS 中,Hive 中包含以下数据模型:Table,External Table,Partition,Bucket。 Hive 中的 Table 和数据库中的 Table 在概念上是类似的,每一个 Table 在 Hive 中都有一个相应的目录存储数据。例如,一个表 xiaojun,它在 HDFS 中的路径为:/ warehouse /xiaojun,其中,wh 是在 hive-site.xml 中由 ${hive.metastore.warehouse.dir} 指定的数据仓库的目录,所有的 Table 数据(不包括 External Table)都保存在这个目录中。 Partition 对应于数据库中的 Partition 列的密集索引,但是 Hive 中 Partition 的组织方式和数据库中的很不相同。在 Hive 中,表中的一个 Partition 对应于表下的一个目录,所有的

hive函数大全

限于喜欢 提交于 2019-12-23 17:52:19
Hive常用函数大全一览 Hive常用函数大全一览 1 关系运算 1.1 1、等值比较: = 1.2 2、不等值比较: 1.3 3、小于比较: < 1.4 4、小于等于比较: <= 1.5 5、大于比较: > 1.6 6、大于等于比较: >= 1.7 7、空值判断: IS NULL 1.8 8、非空判断: IS NOT NULL 1.9 9、LIKE比较: LIKE 1.10 10、JAVA的LIKE操作: RLIKE 1.11 11、REGEXP操作: REGEXP 2 数学运算: 2.1 1、加法操作: + 2.2 2、减法操作: - 2.3 3、乘法操作: * 2.4 4、除法操作: / 2.5 5、取余操作: % 2.6 6、位与操作: & 2.7 7、位或操作: | 2.8 8、位异或操作: ^ 2.9 9.位取反操作: ~ 3 逻辑运算: 3.1 1、逻辑与操作: AND 3.2 2、逻辑或操作: OR 3.3 3、逻辑非操作: NOT 4 数值计算 4.1 1、取整函数: round 4.2 2、指定精度取整函数: round 4.3 3、向下取整函数: floor 4.4 4、向上取整函数: ceil 4.5 5、向上取整函数: ceiling 4.6 6、取随机数函数: rand 4.7 7、自然指数函数: exp 4.8 8、以10为底对数函数: log10 4

解决python 读取hive表的char类型字段返回 keyerror:21

蓝咒 提交于 2019-12-12 05:00:09
这是python不支持char类型所致,使用cast函数将char类型的字段转数据类型即可,比如 select cast(finish_flag as string) finish_flag from sor_data.test1; 这样的sql是可以运行的。 来源: CSDN 作者: JRighte 链接: https://blog.csdn.net/weixin_38507462/article/details/103497218

Hive常用系统函数-字符串函数

梦想的初衷 提交于 2019-12-12 00:34:40
关于Hive常用的字符串处理函数: 函数 参数格式 内容 ascii ascii(string str) 返回传入字符串的第一个字符的ASCII编码 base64 base64(binary bin) 将传入的二进制参数转换为base 64 字符串 character_length character_length(string str) 返回字符串长度(字符串需为UTF8编码) chr chr(bigint|double A) 将传入数字当做ASCII编码,并转换为对应字符,若传入参数超过256,则转换为chr(A % 256) concat concat(string|binary A, string|binary B…) 将传入的字符串A,B合并为新的字符串,concat(‘foo’, ‘bar’)结果为’foobar’ context_ngrams context_ngrams(array<array>, array, int K, int pf) 从一组标记化的句子中返回前k个文本。例如select context_ngrams(sentences(‘hello word!hello hive,hi hive,hello hive’),array(‘hello’,null),4) from A,会返回[{“ngram”:[“hive”],“estfrequency”

hive SQL(HQL)葵花宝典

只谈情不闲聊 提交于 2019-12-11 04:47:19
hive SQL(HQL)葵花宝典 1. 基本数据类型 2.基础运算符与函数 3. 内置运算符 3.1关系运算符 3.2算术运算符 3.3逻辑运算符 3.4复杂类型函数 4.类型转换n 5.日期函数 5.1取年月日时分秒(格式化) 5.2获取今天时间(格式可以自定义) 5.3计算年龄 5.4年月日拼接 5.5总结 6.条件函数 7.常用字符串函数 1. 基本数据类型 tinyint , smallint, int, bigint, float, double, boolean: true/false, string 2.基础运算符与函数 A IS NULL 空 A IS NOT NULL 非空ro A LIKE B 模糊匹配 A RLIKE B 正则表达式匹配 A REGEXP B 正则表达式匹配 SELECT '211' REGEXP '\\d.+', '211' REGEXP '\\D.+', 'abc' REGEXP '\\d.+', 'abc' REGEXP '\\D.+' 运行结果 true false false true 3. 内置运算符 3.1关系运算符 3.2算术运算符 3.3逻辑运算符 3.4复杂类型函数 待定 4.类型转换n cast(expr as <type>) 例如: cast('1' as BIGINT) 将字符串'1'转化成bigint型 5

hive函数 get_json_object的使用

£可爱£侵袭症+ 提交于 2019-12-08 05:34:00
hive提供了json的解析函数:get_json_object 使用方法 对于jsonArray(json数组),如person表的xjson字段有数据: [ {"name":"王二狗","sex":"男","age":"25"},{"name":"李狗嗨","sex":"男","age":"47"} ] 取出第一个json对象,那么hive sql为: SELECT get_json_object(xjson,"$.[0]") FROM person; 结果是: {"name":"王二狗","sex":"男","age":" 25 "} 取出第一个json的age字段的值: SELECT get_json_object(xjson,"$. [ 0 ] .age") FROM person; 结果 25 总结 get_json_object(param1,"$.param2") param1:需要解析的json字段 param2:遇到数组就用 [0,1,2...] 0,1,2是数组对应的元素,遇到jsonObject直接用 ".key"取出想要获取的value。 转载于:https://www.cnblogs.com/drjava/p/10486134.html 来源: CSDN 作者: san.hang 链接: https://blog.csdn.net/weixin

Hive中的用户自定义函数

回眸只為那壹抹淺笑 提交于 2019-12-06 15:25:11
1.1 关于自定义函数 1)Hive 自带了一些函数,比如:max/min等,但是数量有限,自己可以通过自定义UDF来方便的扩展。 2)当Hive提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自定义函数(UDF:user-defined function)。 3)根据用户自定义函数类别分为以下三种: ​ (1)UDF(User-Defined-Function) ​ 一进一出 ​ (2)UDAF(User-Defined Aggregation Function) ​ 聚集函数,多进一出 ​ 类似于:count/max/min ​ (3)UDTF(User-Defined Table-Generating Functions) ​ 一进多出 ​ 如lateral view explore() 4)官方文档地址 https://cwiki.apache.org/confluence/display/Hive/HivePlugins 5)编程步骤: ​ (1)继承org.apache.hadoop.hive.ql.exec.UDF ​ (2)需要实现evaluate函数;evaluate函数支持重载; ​ (3)在hive的命令行窗口创建函数 ​ a)添加jar add jar linux_jar_path ​ b)创建function create

Hive_函数

纵然是瞬间 提交于 2019-12-03 23:21:51
系统内置函数 1. 查看系统自带的函数 hive> show functions; 2. 显示自带的函数的用法 hive> desc function upper; 3. 详细显示自带的函数的用法 hive> desc function extended upper; 自定义函数 占位符! 来源: https://www.cnblogs.com/Tunan-Ki/p/11811273.html

hive函数合集

匿名 (未验证) 提交于 2019-12-03 00:27:02
1.数值运算函数 取整函数: round 指定精度取整函数: round 向下取整函数: floor 向上取整函数: ceil 取随机数函数: rand 2.日期函数 UNIX时间戳转日期函数: from_unixtime 获取当前UNIX时间戳函数: unix_timestamp 日期转UNIX时间戳函数: unix_timestamp 指定格式日期转UNIX时间戳函数: unix_timestamp 日期时间转日期函数: to_date 日期转年函数: year 日期转月函数: month 日期转天函数: day 日期转小时函数: hour 日期转分钟函数: minute 日期转秒函数: second 日期转周函数: weekofyear 日期比较函数: datediff 日期增加函数: date_add 日期减少函数: date_sub 3.条件函数 If函数: if 非空查找函数: COALESCE 条件判断函数:CASE 4.字符串函数 字符串长度函数:length 字符串连接函数:concat 带分隔符字符串连接函数:concat_ws 字符串截取函数:substr,substring 字符串转大写函数:upper,ucase 字符串转小写函数:lower,lcase 去空格函数:trim 左边去空格函数:ltrim 右边去空格函数:rtrim 正则表达式替换函数

【Hive】split函数(分割字符串)

匿名 (未验证) 提交于 2019-12-03 00:18:01
语法: split(string str, string pat) 返回值: array 说明: 按照pat字符串分割str,会返回分割后的字符串数组 举例: 1.基本用法 hive> select split( 'abcdef' , 'c' ) from test; [ "ab" , "def" ] 2.截取字符串中的某个值 hive> select split( 'abcdef' , 'c' )[ 0 ] from test; ab 3.特殊字符 如正则表达式中的特殊符号作为分隔符时,需做转义 (前缀加上\) hive> select split( 'ab_cd_ef' , '\_' )[ 0 ] from test; ab hive> select split( 'ab?cd_ef' , '\\?' )[ 0 ] from test; ab 如果是在shell中运行,则(前缀加上\\) hive -e " select split( 'ab?cd_ef' , '\\\\?' )[ 0 ] from test " 文章来源: 【Hive】split函数(分割字符串)