我正在尝试将包含分钟和秒的时间戳转换为小时间隔的时间戳
即
2022-05-03 11:14:59.000
变成
2022-05-03 11:00:00.000
我尝试了很多不同的方法,但出现错误或者没有给出我想要的结果。我确信有一个简单的解决方案,但我已经尝试了很长时间,我的大脑再也看不到简单的解决方案了。
我尝试执行
to_char((extract(hour from data_timestamp)||':00'), 'HH24:MI') as date_timestamp
但 : 会导致错误。
我也尝试通过做
to_char(extract(hour from data_timestamp), 'HH24:MI')
来获得时间,但结果是HH24:
您可以使用 DATE_TRUNC 函数 - Amazon Redshift:
DATE_TRUNC('datepart', timestamp)
:要截断时间戳值的日期部分。输入datepart
被截断为输入timestamp
的精度。例如,datepart
截断为该月的第一天。month
他们还提供了一个例子:
SELECT DATE_TRUNC('hour', TIMESTAMP '20200430 04:05:06.789');
date_trunc
2020-04-30 04:00:00