|
hive解析json函数:
- get_json_object(param1,'$.param2')
- -- 如果是数组
- get_json_object(xjson,'$.[0].param2')
presto 对json的处理函数:
- -- 数组 (去除第index个json)
- json_array_get(xjson,index)
- -- 单个jsoin对象
- json_extract(xjson,'$.param2')
参考资料:
- https://www.cnblogs.com/drjava/p/10536922.html
4.2 时间函数
昨天/近7天/本月按照这种指标来查询也是非常常见的:
昨天
- SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 1
7天
- SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段名)
近30天
- SELECT * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 30 DAY) <= date(时间字段名)
本月
- SELECT * FROM 表名 WHERE DATE_FORMAT( 时间字段名, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
上一月
- SELECT * FROM 表名 WHERE PERIOD_DIFF( date_format( now( ) , '%Y%m' ) , date_format( 时间字段名, '%Y%m' ) ) =1
在presto中使用时间格式,需要明确写出关键字timestamp,比如:
- select supplier,count(id) from xxx_table where sendtime >= timestamp '2019-06-01'
参考资料:
- https://blog.csdn.net/cool_easy/article/details/50880949
4.3 其他常用的函数
这里我简单整理一下我最近用过函数:
- length --计算字符串长度
- concat --连接两个字符串
- substring -- 截取字符串
- count -- 统计数量
- max -- 最大
- min -- 最小
- sum -- 合计
- floor/ceil --...数学函数
(编辑:成都站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|