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

在Snowflake中将时间列转换为12小时制格式(如08:00:00 AM)

在Snowflake中转换时间为12小时制格式

1. 转换单个时间值

使用Snowflake的TO_CHAR函数,指定HH12:MI:SS AM格式符即可将单个时间值转换为12小时制带AM/PM标识的格式:

SELECT TO_CHAR(TIME '08:00:00', 'HH12:MI:SS AM') AS formatted_time;

执行后会输出:08:00:00 AM。若输入下午时间(如14:00:00),会自动转换为02:00:00 PM。

2. 转换整列数据

假设你的表名为your_table,待转换的时间列名为original_time,可以直接在查询中生成转换后的列:

SELECT 
    original_time,
    TO_CHAR(original_time, 'HH12:MI:SS AM') AS formatted_time_12h
FROM your_table;

如果需要将转换后的数据持久化到表中(新增一列存储12小时制字符串),可执行以下操作:

-- 新增用于存储格式化结果的字符串列
ALTER TABLE your_table ADD COLUMN formatted_time STRING;

-- 更新列数据
UPDATE your_table 
SET formatted_time = TO_CHAR(original_time, 'HH12:MI:SS AM');

注意:TO_CHAR会将TIME类型转换为STRING类型,适合展示场景;若需保留时间的计算属性,建议仍用TIME/TIMESTAMP类型存储,仅在查询时做格式转换。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 09:20:26