首页 > 解决方案 > 如何将任意 unix 时间戳解析为 kdb 中的日期时间?

问题描述

我正在尝试将 unix 时间戳(即 1618876798363946752(~2021 年 4 月))转换为 kdb/q 中的相应日期时间。我尝试过使用以下功能。(按照这个

q)dt:{`datetime$(1970.01.01+0D00:00:00.001 * `long$x)};

但是它会产生不正确的结果:

q)dt 1618876798363946752
2254.09.24T08:41:10.211

datetime将任意长度的 Unix 时间戳转换为其在 kdb+ 中的关联的一般经验法则和相关方法是什么?

感谢您的意见。最好的祝福

标签: datetimetimekdb

解决方案


我稍微调整了@terrylynch 在此处找到的答案,以说明时间戳的完整精度。

q)`datetime$1970.01.01+0D00:00:00.000000001*1618876798363946752
2021.04.19T23:59:58.363

推荐阅读