如何解决TO_CHAR和SSSS午夜后的小时数
在将一些代码从Netezza转换为Snowflake时,我遇到了Snowflake似乎存在的空白。
格式为:
TO_CHAR(,“ SSSS”)
参数SSSS定义为午夜之后的秒数。
雪花无法提取第二级以下的时间,例如毫秒,微秒,纳秒。
我错过了什么吗?还有其他选择吗?
解决方法
有趣的是,这个问题要求的是亚秒级的时间范围,但是引用了仅在秒级返回Netezza的函数。因此,我不确定您要寻找的是什么,但是我相信这就是雪花的用途,我以current_timestamp()
为例:
SET timecheck = current_timestamp();
SELECT DATEDIFF(s,date_trunc(day,$timecheck),$timecheck);
这将返回自午夜以来的时间(以秒为单位)。
SELECT DATEDIFF(ms,$timecheck);
这将返回自午夜以来的时间(以毫秒为单位)。
如果您想使调用在代码中更简洁一些,也可以轻松地将其变成函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。