文档首页/ 云日志服务 LTS/ 最佳实践/ 日志搜索与分析/ 使用时间函数将日志时间字段转换为指定格式
更新时间:2024-10-30 GMT+08:00
分享

使用时间函数将日志时间字段转换为指定格式

在日志搜索分析中往往需要对日志中的时间字段进行处理,例如将日志的时间戳转换成指定格式等,本文介绍时间字段的常用转换示例。

本示例属于白名单功能,支持华北-北京四、华东-上海一、华南-广州、亚太-新加坡、拉美-墨西哥城二区域的白名单用户使用,如有需要,请提交工单,其他区域暂不支持申请开通。

时间字段

将__time转化成时间戳

使用from_unixtime函数将__time字段,从UNIX时间戳转化为timestamp类型的日期和时间表达式。

* | select from_unixtime(__time) 
* | select from_unixtime(__time,'+08:00') 

将__time以指定格式打印

使用date_format函数将字段__time,从 timestamp类型的日期和时间表达式的形式转换为指定格式。

* | select time_format( from_unixtime(__time), 'yyyy-MM-dd HH:mm:ss','+08:00') 

使用time_format函数将字段__time,从 timestamp类型的日期和时间表达式的形式转换为指定格式。

* | select date_format(from_unixtime(__time,'+08:00'),'%Y-%m-%d %H:%i:%s') 

将日志中的时间转换成指定格式

把日志中的时间字段从字符转化成指定格式。

  1. 使用date_parse函数将时间字段,从字符串转化成年-月-日 时:分:秒。
  2. 使用date_format函数截取年-月-日部分。
  3. 使用group by进行分组。
    • 日志样例:
      time:2017-05-17 09:45:00
    • SQL语句样例:
      * | select date_format (date_parse(time,'%Y-%m-%d %H:%i:%S'), '%Y-%m-%d') as day, count(1) as uv group by day order by day asc

相关文档