DAX表达式-根据“时间”列中的时间确定“ Shift”列中的移位

问题描述 投票:0回答:1

((参见视觉效果)我正在寻找一个DAX表达式,该表达式可用于使我的“ Shift”列中的值依赖于“ Time”列中的值。与下面的SQL case语句脚本完全相同或相似。我对DAX相对较新,并且在Power BI中似乎无法使用相同的逻辑。我试图寻找一种解决方案,但似乎找不到与我在寻找的东西完全匹配的东西。

  CASE 
        WHEN CONVERT(VARCHAR(8), si.dtincidentdate, 108) BETWEEN 
             '07:00:00' AND '14:59:00' THEN 'Day' 
        WHEN CONVERT(VARCHAR(8), si.dtincidentdate, 108) BETWEEN 
             '15:00:00' AND '22:59:00' THEN 'Evening' 
        ELSE 'Night'          
      END AS ShiftName

提前感谢!

Time table visual

if-statement powerbi dax case-statement
1个回答
0
投票

您可以使用Switch语句:

WorkShift = SWITCH(TRUE(), 
    [Time] >= TIME(7, 0, 0) && [Time] < TIME(15,0,0), "DAY",
    [Time] >= TIME(15,0,0) && [Time] < TIME(23,0,0), "Evening",
    "Night")

TIME是用于返回“时间”变量类型以进行比较的函数。

© www.soinside.com 2019 - 2024. All rights reserved.