hive函数

Hive date_trunc函数

匿名 (未验证) 提交于 2019-12-03 00:14:01
date_trunc trunc date_trunc('field', source) source timestamp interval date time timestamp interval field timestamp interval field microseconds milliseconds second minute hour day week month quarter year decade century millennium Examples: SELECT date_trunc('hour', TIMESTAMP '2001-02-16 20:38:40'); Result: 2001-02-16 20:00:00 SELECT date_trunc('year', TIMESTAMP '2001-02-16 20:38:40'); Result: 2001-01-01 00:00:00 来源:博客园 作者: 李小智 链接:https://www.cnblogs.com/lixiaozhi/p/11670831.html

hive基础知识四

匿名 (未验证) 提交于 2019-12-03 00:13:02
1. hive表的数据压缩 1.1 数据的压缩说明 压缩模式评价 可使用以下三种标准对压缩方式进行评价 1、压缩比:压缩比越高,压缩后文件越小,所以压缩比越高越好 2、压缩时间:越快越好 3、已经压缩的格式文件是否可以再分割:可以分割的格式允许单一文件由多个Mapper程序处理,可以更好的并行化 常见压缩格式 压缩方式 压缩比 压缩速度 解压缩速度 是否可分割 gzip 13.4% 21 MB/s 118 MB/s 否 bzip2 13.2% 2.4MB/s 9.5MB/s 是 lzo 20.5% 135 MB/s 410 MB/s 是 snappy 22.2% 172 MB/s 409 MB/s 否 Hadoop编码/解码器方式 压缩格式 对应的编码/解码器 DEFLATE org.apache.hadoop.io.compress.DefaultCodec Gzip org.apache.hadoop.io.compress.GzipCodec BZip2 org.apache.hadoop.io.compress.BZip2Codec LZO com.hadoop.compress.lzo.LzopCodec Snappy org.apache.hadoop.io.compress.SnappyCodec 1.2 数据压缩使用 Hive表 中间数据 压缩(map端)

Hive日期格式转换用法

匿名 (未验证) 提交于 2019-12-03 00:03:02
1.日期函数UNIX时间戳转日期函数: from_unixtime语法:from_unixtime(bigint unixtime[, stringformat]) 返回值: string 说明: 转化UNIX时间戳(从1970-01-0100:00:00 UTC到指定时间的秒数)到当前时区的时间格式 举例: hive> select from_unixtime(1323308943,'yyyyMMdd') from dual; 20111208 2.获取当前UNIX时间戳函数: unix_timestamp语法: unix_timestamp() 返回值: bigint 说明: 获得当前时区的UNIX时间戳 举例: hive> select unix_timestamp() from dual; 1323309615 3.日期转UNIX时间戳函数: unix_timestamp语法:unix_timestamp(string date) 返回值: bigint 说明: 转换格式为“yyyy-MM-dd HH:mm:ss“的日期到UNIX时间戳。如果转化失败,则返回0。 举例: hive> select unix_timestamp('2011-12-07 13:01:03') from dual; 1323234063 4.指定格式日期转UNIX时间戳函数: unix

hive常用函数--concat_ws,cast,collect_set,row_number,get_json_object

匿名 (未验证) 提交于 2019-12-02 23:43:01
1. concat_ws (seperator, string s1, string s2...) 功能:制定分隔符将多个字符串连接起来,实现“ 列转行 ” 例子:常常结合group by与collect_set使用 有表结构a string , b string , c int 数据为 c d 1 c d 2 c d 3 e f 4 e f 5 e f 6 想要得到 c d 1,2,3 e f 4,5,6 语句如下 select a, b, concat_ws (',' , collect_set ( cast (c as string))) from table group by a,b; CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。以下例子用于将文本字符串'12'转换为整型: SELECT CAST('12' AS int) 3. collect_set 去重 ,去除group by后的重复元素, 第二个是形成一个 集合 ,将group by后属于同一组的第三列集合起来成为一个集合。与contact_ws 结合使用就是将这些元素以逗号分隔形成字符串。 4.row_number 举个例子:employee表,先按照部门进行分组,部门内部按照工资降序排列 SELECT by ORDER BY desc FROM employee 举个例子:

HIVE函数大全

烂漫一生 提交于 2019-12-02 17:05:54
Hive函数大全 目录: 一、关系运算: 1. 等值比较: = 2. 等值比较:<=> 3. 不等值比较: <>和!= 4. 小于比较: < 5. 小于等于比较: <= 6. 大于比较: > 7. 大于等于比较: >= 8. 区间比较 9. 空值判断: IS NULL 10. 非空判断: IS NOT NULL 10. LIKE比较: LIKE 11. JAVA的LIKE操作: RLIKE 12. REGEXP操作: REGEXP 二、数学运算: 1. 加法操作: + 2. 减法操作: – 3. 乘法操作: * 4. 除法操作: / 5. 取余操作: % 6. 位与操作: & 7. 位或操作: | 8. 位异或操作: ^ 9.位取反操作: ~ 三、逻辑运算: 1. 逻辑与操作: AND 、&& 2. 逻辑或操作: OR 、|| 3. 逻辑非操作: NOT、! 四、复合类型构造函数 1. map结构 2. struct结构 3. named_struct结构 4. array结构 5. create_union 五、复合类型操作符 1. 获取array中的元素 2. 获取map中的元素 3. 获取struct中的元素 六、数值计算函数 1. 取整函数: round 2. 指定精度取整函数: round 3. 向下取整函数: floor 4. 向上取整函数: ceil 5.

hive 自带 function

自作多情 提交于 2019-12-02 16:21:46
LIKE比较: LIKE 语法: A LIKE B 操作类型: strings 描述: 如果字符串A或者字符串B为NULL,则返回NULL;如果字符串A符合表达式B的正则语法,则为TRUE;否则为FALSE。B中字符”_”表示任意单个字符,而字符”%”表示任意数量的字符。 举例: hive> select 1 from dual where ‘football’ like ‘foot%’; 1 hive> select 1 from dual where ‘football’ like ‘foot____’; 1 JAVA的LIKE操作: RLIKE 语法: A RLIKE B 操作类型: strings 描述: 如果字符串A或者字符串B为NULL,则返回NULL;如果字符串A符合 Java 正则表达式B的正则语法,则为TRUE;否则为FALSE。 举例: hive> select 1 from dual where ‘footbar’ rlike ‘^f.*r$’; 1 REGEXP操作: REGEXP 语法: A REGEXP B 操作类型: strings 描述: 功能与RLIKE相同 举例: hive> select 1 from dual where ‘footbar’ REGEXP ‘^f.*r$’; 1 +、-、*、/ 、% 加 减 乘 除 取余 操作 语法都类似

hive日期函数

北城余情 提交于 2019-12-02 16:21:36
无论做什么数据,都离不开日期函数的使用。 这里转载一下Hive的日期函数的使用,写的相当完整。 日期函数UNIX时间戳转日期函数: from_unixtime语法:from_unixtime(bigint unixtime[, string format]) 返回值: string 说明: 转化UNIX时间戳(从1970-01-01 00:00:00 UTC到指定时间的秒数)到当前时区的时间格式 举例: hive> select from_unixtime(1323308943,'yyyyMMdd') from dual; 20111208 获取当前UNIX时间戳函数: unix_timestamp语法: unix_timestamp() 返回值: bigint 说明: 获得当前时区的UNIX时间戳 举例: hive> select unix_timestamp() from dual; 1323309615 日期转UNIX时间戳函数: unix_timestamp语法:unix_timestamp(string date) 返回值: bigint 说明: 转换格式为“yyyy-MM-dd HH:mm:ss“的日期到UNIX时间戳。如果转化失败,则返回0。 举例: hive> select unix_timestamp('2011-12-07 13:01:03') from

hive函数大全

♀尐吖头ヾ 提交于 2019-12-02 14:37:12
目录 一、关系运算: 4 等值比较: = 4 不等值比较: <> 4 小于比较: < 4 小于等于比较: <= 4 大于比较: > 5 大于等于比较: >= 5 空值判断: IS NULL 5 非空判断: IS NOT NULL 6 LIKE比较: LIKE 6 JAVA的LIKE操作: RLIKE 6 REGEXP操作: REGEXP 7 二、数学运算: 7 加法操作: + 7 减法操作: - 7 乘法操作: * 8 除法操作: / 8 取余操作: % 8 位与操作: & 9 位或操作: | 9 位异或操作: ^ 9 9.位取反操作: ~ 10 三、逻辑运算: 10 逻辑与操作: AND 10 逻辑或操作: OR 10 逻辑非操作: NOT 10 四、数值计算 11 取整函数: round 11 指定精度取整函数: round 11 向下取整函数: floor 11 向上取整函数: ceil 12 向上取整函数: ceiling 12 取随机数函数: rand 12 自然指数函数: exp 13 以10为底对数函数: log10 13 以2为底对数函数: log2 13 对数函数: log 13 幂运算函数: pow 14 幂运算函数: power 14 开平方函数: sqrt 14 二进制函数: bin 14 十六进制函数: hex 15 反转十六进制函数: unhex 15