Reporting services 如果列X值=“SSRS”;X";然后显示相应的列Y值

Reporting services 如果列X值=“SSRS”;X";然后显示相应的列Y值,reporting-services,Reporting Services,我使用的是SSRS2008,数据集如下所示:(简化) 我在找一份IIF声明,比如: =iif(fields!Question.value = "How Old",Fields!Answer.value,"N/A") 但是,这在第一行之外不起作用,因此如果first(fields!etc)可以正常工作,但不适用于数据集下面的行 有人能提供一个解决方案吗?如果您在SSRS中完成所有工作,那么它可能是一个大的嵌套Iif语句: =Iif(fields!Question.value = "How Old

我使用的是SSRS2008,数据集如下所示:(简化)

我在找一份IIF声明,比如:

=iif(fields!Question.value = "How Old",Fields!Answer.value,"N/A")
但是,这在第一行之外不起作用,因此如果first(fields!etc)可以正常工作,但不适用于数据集下面的行


有人能提供一个解决方案吗?

如果您在SSRS中完成所有工作,那么它可能是一个大的嵌套Iif语句:

=Iif(fields!Question.value = "How Old",Fields!Answer.value,Iif(fields!Question.value = "How New",Fields!Answer.value,
Iif(fields!Question.value = "How Big",Fields!Answer.value,Iif(fields!Question.value = "How Small",Fields!Answer.value,"N/A"))))
=SWITCH(
    fields!Question.value = "How Old", Fields!Answer.value
    fields!Question.value = "How New", Fields!Answer.value
    fields!Question.value = "How Big", Fields!Answer.value
    fields!Question.value = "How Small", Fields!Answer.value
    )
或者您可以执行一个SWITCH语句:

=Iif(fields!Question.value = "How Old",Fields!Answer.value,Iif(fields!Question.value = "How New",Fields!Answer.value,
Iif(fields!Question.value = "How Big",Fields!Answer.value,Iif(fields!Question.value = "How Small",Fields!Answer.value,"N/A"))))
=SWITCH(
    fields!Question.value = "How Old", Fields!Answer.value
    fields!Question.value = "How New", Fields!Answer.value
    fields!Question.value = "How Big", Fields!Answer.value
    fields!Question.value = "How Small", Fields!Answer.value
    )

这就是您正在使用的表达式吗?后续行上的输出是什么?嗨。后续行只返回一个N/a。但是,我已经通过对自身的查找解决了这个问题。So=lookup(“多旧”,Fields!问题。值,字段!答案。值,“此数据集”)谢谢您的建议SQLHound,我通过对自身的查找解决了它。So=lookup(“多旧”,字段!问题。值,字段!回答。值,“此数据集”)。再次感谢。