Spotfire 中的 Datediff 为 null
Datediff with null in Spotfire
我正在尝试计算两个日期之间的差异,但是如果 "end date" 有一个空值,比如第二行和第四行,那么我想输入 "today"。 ...数据 table 看起来像这样。
Hire Date Term Date = "end date"
01/01/2019 05/01/2020
05/04/2018
09/17/2019 03/18/2020
10/19/2018
我原以为这样的事情会奏效,但事实并非如此……
If([Term Date]<>NULL THEN DateDiff("year",[Hire Date],[Term Date])
ELSE DateDiff("year",[Hire Date],Today())
END
提前致谢!
您可以使用 SN() 替代 Null。
DateDiff('year',[Hire Date] , SN([TermDate],Today() ) )
或使用 case 语句而不是 IF,因为 IF 语句的格式不正确 -
If(argument, True, False)
是正确的格式,但在某些情况下使用案例更容易。
Case when [Term Date] is null then DateDiff("year",[Hire Date],Today())
else DateDiff("year",[Hire Date],[Term Date])
end
我正在尝试计算两个日期之间的差异,但是如果 "end date" 有一个空值,比如第二行和第四行,那么我想输入 "today"。 ...数据 table 看起来像这样。
Hire Date Term Date = "end date"
01/01/2019 05/01/2020
05/04/2018
09/17/2019 03/18/2020
10/19/2018
我原以为这样的事情会奏效,但事实并非如此……
If([Term Date]<>NULL THEN DateDiff("year",[Hire Date],[Term Date])
ELSE DateDiff("year",[Hire Date],Today())
END
提前致谢!
您可以使用 SN() 替代 Null。
DateDiff('year',[Hire Date] , SN([TermDate],Today() ) )
或使用 case 语句而不是 IF,因为 IF 语句的格式不正确 -
If(argument, True, False)
是正确的格式,但在某些情况下使用案例更容易。
Case when [Term Date] is null then DateDiff("year",[Hire Date],Today())
else DateDiff("year",[Hire Date],[Term Date])
end