SSRS:如何在过滤后获得两列的相等ID的计数
SSRS: How to get count of equal ID of two columns after filter
我有以下 table(数据集 2):
ACCOUNT_ID
8d82a329-f23e-ec11-8c62-000d3a8252c3
8988e53a-1158-ec11-8f8f-002248171edf
8988e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b988e53a-1158-ec11-8f8f-002248171edf
CCA_AGENT_ID
8788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b988e53a-1158-ec11-8f8f-002248171edf
CJ_ID
8098037c-6d89-ec11-93b0-000d3a82c9fa
ac101b6f-478e-ec11-b400-000d3a817222
ac101b6f-478e-ec11-b400-000d3a817222
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
ac101b6f-478e-ec11-b400-000d3a817222
ac101b6f-478e-ec11-b400-000d3a817222
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
ddb8ebf6-468e-ec11-b400-000d3a817222
ddb8ebf6-468e-ec11-b400-000d3a817222
9ed93c43-478e-ec11-b400-000d3a817222
我想先根据 DataSet1(主数据集)的 ID 值 CJ_ID 进行过滤,然后计算 ACCOUNT_ID = AGENT_ID
的所有行
DataSet2 包含以下字段:
我用下面的表达式创建了一个计算字段,名称为 AccEqualsAgent:
我在文本框上设置了这个表达式并给出了 0 值:
但是,我尝试聚合 AccEqualsAgent 字段的值,它显示 22:
提前致谢。
执行此操作的最简单方法是直接在您的数据集查询中,但假设您由于某种原因不能这样做,那么您可以按如下方式执行此操作。
从数据集属性面板向数据集 2 添加一个计算字段。
将字段命名为 AccEqualsAgent
并将表达式设置为
=IIF(Fields!ACCOUNT_ID.Value = Fields!AGENT_ID.Value, Fields!CJ_ID.Value, "")
现在您可以简单地针对这个新字段执行 LOOKUPSET()
并计算结果,就像这样...
=LookupSet(Fields!ID.Value, Fields!AccEqualsAgent.Value, Fields!AccEqualsAgent.Value, "Dataset2").Length
这将为您提供查找集中找到的记录数
更新工作示例
我根据提供的示例数据为 DataSet2 重新创建了数据。所有数据都存储为数据类型 = UNIQUEIDENTIFIER
然后,我通过从 DataSet2 中获取 CJ_ID 的唯一列表来创建 DataSet1。我是手工完成的,所以它们实际上并没有链接。
然后我使用下面的表达式
向名为 AccEqualsAgent
的 DataSet2 添加了一个计算列
=IIF(Fields!ACCOUNT_ID.Value = Fields!CCA_AGENT_ID.Value, Fields!CJ_ID.Value, "")
然后我在报告中添加了两个 table,这样我们就可以看到我们正在处理的数据。
倒序....
第二个 table 只是 DataSet2 的转储,包括计算字段。
第一个 table 是 DataSet1 的转储,但还包含一个表达式,用于根据您的问题计算匹配记录。
使用的表达式如下
=LookupSet(
Fields!ID.Value,
Fields!AccEqualsAgent.Value,
Fields!AccEqualsAgent.Value, "DataSet2"
).Length
包括数据集等在内的最终设计看起来像这样..
当报告为 运行 时,我们得到以下...
我有以下 table(数据集 2):
ACCOUNT_ID
8d82a329-f23e-ec11-8c62-000d3a8252c3
8988e53a-1158-ec11-8f8f-002248171edf
8988e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
8b88e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b988e53a-1158-ec11-8f8f-002248171edf
CCA_AGENT_ID
8788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9988e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9788e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
9b88e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b788e53a-1158-ec11-8f8f-002248171edf
b988e53a-1158-ec11-8f8f-002248171edf
CJ_ID
8098037c-6d89-ec11-93b0-000d3a82c9fa
ac101b6f-478e-ec11-b400-000d3a817222
ac101b6f-478e-ec11-b400-000d3a817222
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
ac101b6f-478e-ec11-b400-000d3a817222
ac101b6f-478e-ec11-b400-000d3a817222
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
fabc5219-198e-ec11-b400-000d3a817bb3
ddb8ebf6-468e-ec11-b400-000d3a817222
ddb8ebf6-468e-ec11-b400-000d3a817222
9ed93c43-478e-ec11-b400-000d3a817222
我想先根据 DataSet1(主数据集)的 ID 值 CJ_ID 进行过滤,然后计算 ACCOUNT_ID = AGENT_ID
的所有行DataSet2 包含以下字段:
我用下面的表达式创建了一个计算字段,名称为 AccEqualsAgent:
我在文本框上设置了这个表达式并给出了 0 值:
但是,我尝试聚合 AccEqualsAgent 字段的值,它显示 22:
提前致谢。
执行此操作的最简单方法是直接在您的数据集查询中,但假设您由于某种原因不能这样做,那么您可以按如下方式执行此操作。
从数据集属性面板向数据集 2 添加一个计算字段。
将字段命名为 AccEqualsAgent
并将表达式设置为
=IIF(Fields!ACCOUNT_ID.Value = Fields!AGENT_ID.Value, Fields!CJ_ID.Value, "")
现在您可以简单地针对这个新字段执行 LOOKUPSET()
并计算结果,就像这样...
=LookupSet(Fields!ID.Value, Fields!AccEqualsAgent.Value, Fields!AccEqualsAgent.Value, "Dataset2").Length
这将为您提供查找集中找到的记录数
更新工作示例
我根据提供的示例数据为 DataSet2 重新创建了数据。所有数据都存储为数据类型 = UNIQUEIDENTIFIER 然后,我通过从 DataSet2 中获取 CJ_ID 的唯一列表来创建 DataSet1。我是手工完成的,所以它们实际上并没有链接。
然后我使用下面的表达式
向名为AccEqualsAgent
的 DataSet2 添加了一个计算列
=IIF(Fields!ACCOUNT_ID.Value = Fields!CCA_AGENT_ID.Value, Fields!CJ_ID.Value, "")
然后我在报告中添加了两个 table,这样我们就可以看到我们正在处理的数据。
倒序....
第二个 table 只是 DataSet2 的转储,包括计算字段。
第一个 table 是 DataSet1 的转储,但还包含一个表达式,用于根据您的问题计算匹配记录。
使用的表达式如下
=LookupSet(
Fields!ID.Value,
Fields!AccEqualsAgent.Value,
Fields!AccEqualsAgent.Value, "DataSet2"
).Length
包括数据集等在内的最终设计看起来像这样..
当报告为 运行 时,我们得到以下...