You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Firebase时间戳转换为Snowflake TIMESTAMP格式?

Snowflake中Firebase时间戳转TIMESTAMP格式方案

直接从原始JSON解析(推荐)

不用先提取整个createdAt为字符串,直接从data字段里解析_seconds和_nanoseconds:

SELECT
    TO_TIMESTAMP_NTZ(
        data:createdAt:_seconds::NUMBER,
        data:createdAt:_nanoseconds::NUMBER / 1000000
    ) AS created_at_timestamp
FROM your_firebase_table;

如果习惯用json_extract_path_text函数,也可以这么写:

SELECT
    TO_TIMESTAMP_NTZ(
        json_extract_path_text(data, 'createdAt', '_seconds')::NUMBER,
        json_extract_path_text(data, 'createdAt', '_nanoseconds')::NUMBER / 1000000
    ) AS created_at_timestamp
FROM your_firebase_table;

处理已提取的字符串形式JSON

如果你的视图已经把createdAt提取成了字符串列(比如列名created_at_str,值为{"_nanoseconds":248000000,"_seconds":1641850613}),可以先转成JSON对象再解析:

SELECT
    TO_TIMESTAMP_NTZ(
        PARSE_JSON(created_at_str):_seconds::NUMBER,
        PARSE_JSON(created_at_str):_nanoseconds::NUMBER / 1000000
    ) AS created_at_timestamp
FROM your_view;

关键说明

  • 用TO_TIMESTAMP_NTZ生成不带时区的时间戳,若需要带时区,可替换为TO_TIMESTAMP_TZ并指定时区(例如TO_TIMESTAMP_TZ(..., 'UTC'))。
  • Firebase返回的_nanoseconds是纳秒单位,Snowflake的时间戳函数第二个参数接受毫秒数,因此需要除以1000000做单位转换。

内容的提问来源于stack exchange,提问作者user18162889

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 08:35:24