Hive 配置单元:如何减去给定时间戳的1秒

Hive 配置单元:如何减去给定时间戳的1秒,hive,Hive,我想从蜂箱中给定的时间戳中减去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

我想从蜂箱中给定的时间戳中减去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
“美国和加拿大:DST于2016年11月6日结束

大部分美国、加拿大和墨西哥北部边境城市 在2016年11月6日星期日结束夏时制(DST)。
夏令时11月17日星期日结束 2016年6月6日

时钟将从02:00(凌晨2点)向后拨1小时至标准时间 当地时间01:00(凌晨1点)。”

“美国和加拿大:DST于2016年11月6日结束

大部分美国、加拿大和墨西哥北部边境城市 在2016年11月6日星期日结束夏时制(DST)。
夏令时11月17日星期日结束 2016年6月6日

时钟将从02:00(凌晨2点)向后拨1小时至标准时间 当地时间01:00(凌晨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
这对我很有用:

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秒时消除夏时制部分?问题是,我们是否可以在添加或减去1秒时消除夏时制部分?