【问题标题】:SSRS-Problem in Comparing rows under a group and show it Matched or UnmatchedSSRS-Problem in Comparing rows under a group and show it Matched or Unmatched
【发布时间】:2019-05-21 09:18:25
【问题描述】:

我的数据如下所示,并且在 Column1 分组。我需要将 column2 与 Group 中的 column2 进行比较,并突出显示 column2 的值在 Column3 中是否相同或不同-

Column1 Column2 Column3
123     111 
123     111 
1234    2222    
1234    2222    
1234    3333

我在 Column3 中使用如下表达式。正如你最后可以提到的“Column1”,我已经提到它考虑到它会分组然后比较。

=IIF(Fields!Column2.Value = Previous(Fields!Column2.Value), "Same", IIF (Fields!Column2.Value <> Previous(Fields!Column2.Value), "Different")), "Column1"

我的期望如下,即如果 Column2 的所有值在一个组(column1 分组)下都相同,则 column3 应该填充,然后 Column3 应该流行,否则对于一个组下的所有行不同

Column1 Column2 Column3
123      111    Same
123      111    Same
1234    2222    Different
1234    2222    Different
1234    3333    Different

【问题讨论】:

    标签: reporting-services ssrs-grouping


    【解决方案1】:

    您可以为此使用 CountDistinct。

    如果我们假设您的 Column1 'RowGroup' 被称为 grpCol1,那么第 3 列中的表达式将看起来像这样。

    = IIF(CountDistinct(Fields!Column2.Value,"grpCol1") >1 , "不同", "相同")

    基本上这就是说.. 计算行组 grpCol1 中有多少不同的 Column2 值

    因此,对于示例中的前两行,它将返回 1,因为只有 1 个不同的值,对于接下来的三行,它将返回 2,因为有 2 个不同的值。

    注意:grpCol1 或您的行组名称必须在 qoutes 内并且区分大小写。

    【讨论】:

    • 嗨 Alan Schofield,是的,它工作得非常好,感谢您的解决方案,这真的是一个很大的帮助。我现在可以说这个平台确实有帮助。非常感谢您的宝贵时间。
    【解决方案2】:

    更简单的方法是:

    =IIF(Fields!Column2.Value = Fields!Column1.Value, "Same", "Different")
    

    【讨论】:

    • 嗨,这不是要比较 Column1 和 Column2。它是关于在 Column1 发生的分组,即 123 是一组 2 个第一行,然后它需要比较同一组下的 column2 值,即 123,如果它相同或不同
    猜你喜欢
    • 1970-01-01
    • 2022-12-01
    • 2022-12-15
    • 2022-08-17
    • 2022-12-02
    • 2022-12-02
    • 1970-01-01
    • 2021-11-28
    • 2022-12-02
    相关资源
    最近更新 更多