舍入到最近的十分钟-Snowflake / SQL

问题描述 投票:0回答:1

在Snowflake / SQL中将时间戳取整到最接近的十分钟的最佳方法是什么?谢谢

timestamp rounding snowflake-datawarehouse
1个回答
2
投票

从纪元ROUND()转换为秒,然后转换回TIMESTAMP

SELECT TO_TIMESTAMP(ROUND(EXTRACT(EPOCH_SECOND FROM CURRENT_TIMESTAMP)/(10*60))*(10*60));

=> 2019-12-04 07:10:00.000

(以上查询在世界标准时间07:13运行]

Note,您可以使用TO_TIMESTAMP_[L]TZ()转换回本地时区,但是通常无法通过将时间戳记为[[not您本地时区的TIMESTAMP_TZ进行四舍五入来正确转换在夏令时开始之前。然后,您必须知道TIMESTAMP_TZ起源的时区的名称。

© www.soinside.com 2019 - 2024. All rights reserved.