在Palantir Foundry中如何正确将Epoch时间转换为日期时间?
解决Palantir中Epoch长整型转日期时间的问题
你得到的55346年这类异常日期,核心原因是Epoch时间单位不匹配:Palantir默认将长整型转为TIMESTAMP时,按秒级Epoch处理,但你的数据大概率是毫秒级Epoch(这是最常见的场景),直接转换会把毫秒当成秒,导致时间被放大1000倍,最终得到离谱的远期日期。
以下是两种正确的转换方式:
方法1:SQL代码转换
如果你的Epoch数据是毫秒级,先除以1000转为秒级,再执行CAST转换:
CAST(CAST(utc_column / 1000 AS TIMESTAMP) AS DATE)
如果数据是微秒级(相对少见),则需要除以1000000:
CAST(CAST(utc_column / 1000000 AS TIMESTAMP) AS DATE)
方法2:列编辑器可视化转换
在列编辑器中操作时,需要手动指定Epoch的时间单位:
- 打开目标列的编辑器,选择「转换」选项
- 找到「从Epoch时间戳转换」功能
- 在设置弹窗里选择对应单位(毫秒/秒/微秒),确认后完成转换
验证建议
取一条已知对应日期的Epoch数据做测试,比如毫秒级Epoch 1699996800000 对应2023-11-14,用上述方法转换后核对结果,确保逻辑正确。
内容的提问来源于stack exchange,提问作者asb
相关产品推荐
相关产品推荐

