首页 > 解决方案 > 如何创建 powerbi 报告以通过查询显示与 sql 组相同的结果

问题描述

我有一个 sql server 表。我已经包含了下表中的一些列

status_id 地区 地点
1 南州 太阳城
2 南州 太阳城
3 北州 雨城
4 北州 太阳城

每个城市都有很多状态。但是,每个城市应该只有一个区域。在上面的示例中,Sun City 有 3 个状态,但它们位于 2 个不同的区域。

在 sql 中,我可以很容易地找到哪些城市与此查询有冲突:

select count(distinct region), location
from status
group by location
having count(distinct region) > 1

这将返回:

数数 地点
2 太阳城

我的问题是如何在 powerbi 中重现此查询?请注意,我无法对 sql server 数据进行任何更改。我只需要报告有冲突的数据。

标签: sql-serverpowerbidax

解决方案


您可以在不编写任何 DAX 的情况下执行此操作,方法是将location列放入矩阵视觉对象并添加region为值字段,并使用下拉列表将聚合设置为 Count (Distinct),然后使用过滤器在这些大于 1 时进行选择。

矩阵视觉

当然,您也可以使用 DAX 编写计算表。

MultiRegions =
FILTER (
    SUMMARIZECOLUMNS (
        'status'[location],
        "count", CALCULATE ( DISTINCTCOUNT ( 'status'[region] ) )
    ),
    [count] > 1
)

计算表


推荐阅读