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

Flink SQL中如何将Timestamp转换为带毫秒的hh:mm:sss格式?

在Flink SQL里,使用DATE_FORMAT()函数即可实现Timestamp类型到带毫秒的hh:mm:ss.SSS格式的转换,核心是指定正确的格式模板。

基础用法

格式模板中,hh对应12小时制小时,mm代表分钟,ss代表秒,SSS代表三位毫秒数。基础语法如下:

DATE_FORMAT(你的Timestamp字段, 'hh:mm:ss.SSS')

如果需要24小时制的时间,只需把hh替换为HH:

DATE_FORMAT(你的Timestamp字段, 'HH:mm:ss.SSS')

实际示例

假设存在表event_log,其中event_time是Timestamp类型字段,执行以下查询即可获取转换后的时间格式:

SELECT
    event_time,
    -- 12小时制带毫秒格式
    DATE_FORMAT(event_time, 'hh:mm:ss.SSS') AS time_12h,
    -- 24小时制带毫秒格式
    DATE_FORMAT(event_time, 'HH:mm:ss.SSS') AS time_24h
FROM event_log;

注意事项

  • Flink 1.12及以上版本支持DATE_FORMAT()函数,低版本需采用其他方式实现
  • 格式占位符区分大小写:HH(24小时制)与hh(12小时制)不可混用,SSS必须大写才能正确解析毫秒

内容的提问来源于stack exchange,提问作者şentürk şimşek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 14:52:03