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

Power BI中如何提取时间列的12小时制小时(带AM/PM标识)

Power BI中提取12小时制小时及时段标识的方法

你可以通过DAX计算列或者Power Query自定义列两种方式实现需求,以下是具体步骤:

方法一:DAX计算列

在数据视图中,点击「新建列」,输入以下公式(注意替换'表名'[时间列]为你实际的表名和列名):

12小时制时段 = 
VAR 当前小时 = HOUR('表名'[时间列])
VAR 12小时值 = IF(当前小时 IN {0,12}, 12, MOD(当前小时, 12))
VAR 时段标识 = IF(当前小时 >= 12, "PM", "AM")
RETURN 12小时值 & " " & 时段标识
  • 逻辑说明:
    • 先提取时间列的24小时制小时数
    • 处理特殊值:0点(午夜)和12点(正午)统一显示为12,其他小时取模12得到12小时制数值
    • 根据小时数判断时段:>=12为PM,否则为AM
    • 最后拼接小时数和时段标识

方法二:Power Query自定义列

进入Power Query编辑器,选中目标时间列后,点击「添加列」→「自定义列」,输入以下公式:

let
    提取小时 = Time.Hour([时间列]),
    转换12小时 = if 提取小时 = 0 or 提取小时 = 12 then 12 else 提取小时 mod 12,
    时段 = if 提取小时 >= 12 then "PM" else "AM"
in
    Text.From(转换12小时) & " " & 时段
  • 逻辑说明:
    • 用Time.Hour提取24小时制小时数
    • 同样处理0点和12点的特殊情况,其他小时取模12
    • 判断时段后,将小时数转为文本并与时段拼接

示例验证

原时间列生成的12小时制时段
10:12:02 AM10 AM
8:10:09 PM8 PM
12:30:00 AM12 AM
12:15:00 PM12 PM
00:45:00(午夜)12 AM

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 08:23:12