繁体   English   中英

SSRS 中的嵌套 iif 问题

[英]Nested iif issue in SSRS

嵌套 iif 的编译错误

=IIf(Fields!no_of_employees.Value = max(Fields!no_of_employees.Value,"DataSet1"),"Lime","Gold",
       IIf(Fields!no_of_employees.Value = min(Fields!no_of_employees.Value,"DataSet1"),"Red","Gold"
       ))

我试图实现嵌套 iif。

如果您查看您的陈述,您已将 4 个参数传递给第一个 IIF

要编写一个普通的IIF ,你会做类似的事情

=IIF(
     ConditionA=True,
     TrueResult,
     FalseResult
    )

编写嵌套的IIF时,您会做这样的事情

=IIF(
     ConditionA=True,
     TrueResult,
     IIF(
         ConditionB=True,
         TrueResult,
         FalseResult
         )
    )

要修复您的代码,请删除"Gold",

我更喜欢使用SWITCH()而不是嵌套的IIF ,因为我认为它更易于阅读。 如果你想使用SWITCH()那么你可以重写你的表达式如下。

=SWITCH(
   Fields!no_of_employees.Value = max(Fields!no_of_employees.Value,"DataSet1"), "Lime",
   Fields!no_of_employees.Value = min(Fields!no_of_employees.Value,"DataSet1"), "Red",
   True, "Gold"
)

最后的True就像一个 ELSE。 您可以在此处阅读有关SWITCH()的更多信息。

https://learn.microsoft.com/en-us/sql/reporting-services/report-design/expression-examples-report-builder-and-ssrs?view=sql-server-ver16#DecisionFunctions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM