我想从蜂巢中的给定时间戳中减去1秒。当我试图在给定的时间戳上添加1秒时,它运行良好,但减法效果不佳。
以下声明给出了正确的添加结果
select from_unixtime(unix_timestamp('2016-11-06 01:00:00.000','yyyy-MM-dd HH:mm:ss.SSS'),'yyyy-MM-dd HH:mm:ss.SSS') , from_unixtime(unix_timestamp('2016-11-06 01:00:00.000','yyyy-MM-dd HH:mm:ss.SSS') + 1,'yyyy-MM-dd HH:mm:ss.SSS')
但是对于减法我没有使用下面的
得到正确的结果select from_unixtime(unix_timestamp('2016-11-06 01:00:00.000','yyyy-MM-dd HH:mm:ss.SSS'),'yyyy-MM-dd HH:mm:ss.SSS') , from_unixtime(unix_timestamp('2016-11-06 01:00:00.000','yyyy-MM-dd HH:mm:ss.SSS') - 1,'yyyy-MM-dd HH:mm:ss.SSS')
我得到的减法结果
2016-11-06 01:00:00.000 2016-11-06 01:59:59.000
但预期的结果是
2016-11-06 01:00:00.000 2016-11-06 12:59:59.000
答案 0 :(得分:1)
这对我有用:
from_unixtime(unix_timestamp(ref.rptg_end_ts,'yyyy-MM-dd HH:mm:ss') + (-1),'yyyy-MM-dd HH:mm:ss') ref.rptg_end_ts
答案 1 :(得分:0)
“美国和加拿大:DST于2016年11月6日结束......
大多数美国,加拿大和墨西哥的北部边境城市 结束夏令时(DST)于2016年11月6日星期日 夏令时于11月的太阳报结束 2016年6月
从02:00(凌晨2点)到标准时间,时钟将缩短1小时 01:00(凌晨1点),当地时间。“