, unix_timestamp() - unix_timestamp(ymdhms), unix_timestamp()
, unix_timestamp(ymdhms)
, concat(CAST((unix_timestamp() - unix_timestamp(ymdhms)) / (60 * 60 * 24) AS int), '天 ', CAST((unix_timestamp() - unix_timestamp(ymdhms)) / (60 * 60) AS int) % 24, '小时 ',
CAST((unix_timestamp() - unix_timestamp(ymdhms)) / 60 AS int) % 60, '分 ',
CAST((unix_timestamp() - unix_timestamp(ymdhms)) % 60 AS int), '秒')
, ymdhms
FROM wl_csg.srv_open_account_webull_18_05_21
说明:
unix_timestamp()
是hive系统时间,格式是timestamp,精确到秒。
unix_timestamp(ymdhms)
是把时间转换成timestamp格式,是2018-05-23 07:15:50
格式。
unix_timestamp() - unix_timestamp(ymdhms)
是两个时间转换为timestamp之后相减,timestamp单位是秒,相减之后是两个时间之间相差的秒数。
CAST((unix_timestamp() - unix_timestamp(ymdhms)) % 60 AS int)
是相差的秒数。
CAST((unix_timestamp() - unix_timestamp(ymdhms)) / 60 AS int) % 60
是相差的分钟数。
CAST((unix_timestamp() - unix_timestamp(ymdhms)) / (60 * 60) AS int) % 24
是相差的小时数。
concat(CAST((unix_timestamp() - unix_timestamp(ymdhms)) / (60 * 60 * 24) AS int)
是相差的天数。
查询结果如下:
- 日期函数
select
trunc(CURRENT_DATE, 'MM'), --当月第一天
last_day(CURRENT_DATE), --当月最后一天
add_months(CURRENT_DATE, -1), --增加一天trunc(add_months(CURRENT_DATE, -1), 'MM') --上个月第一天
参考
网友评论