首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在powerBI中包含具有多个值的列,以便与切片器一起使用

在powerBI中包含具有多个值的列,以便与切片器一起使用
EN

Stack Overflow用户
提问于 2017-02-23 07:40:20
回答 1查看 13.7K关注 0票数 4

我有一个包含以下数据的列

代码语言:javascript
复制
|  spoon
|  fork
|  fork & spoon

我想添加一个切片器到我的页面,它有两个选项:匙,叉。当选择了spoon时,它会显示Spoon和fork & Spoon的所有行的结果。当Fork被选中时,它会显示Fork和fork & spoon的两行结果。

这可以在powerbi中实现吗?

如果不是直接的,我想像这样格式化我的数据可能会有帮助?powerBI是否有选项将分号分隔的值视为多个值?

代码语言:javascript
复制
|  Spoon
|  Fork
|  Fork ; Spoon

编辑:关于我的实际表格布局的更多信息:

代码语言:javascript
复制
| Service A |  revenue |  category 1    
| Service B |  revenue |  category 2
| Service C |  revenue |  category 1 & 2
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-23 11:52:22

它可以根据您希望为过滤的行显示的结果来实现,例如,求和、求平均值、求计数等。

我将使用DAX表达式中提供的SUMX函数向您展示一个非常简单的示例,说明如何对筛选出的行进行求和。

假设您有两个表,如下所示:

MyTable:包含数据的表。

SlicerTable:用于创建切片器的表。

使用SlicerTable[SlicerColumn]列将切片器添加到报告中。然后,使用以下表达式在MyTable表中创建一个名为Result的度量:

代码语言:javascript
复制
Result =
SUMX (
    FILTER (
        MyTable,
        [MyColumn] = FIRSTNONBLANK ( SlicerTable[SlicerColumn], 0 )
            || FIND ( FIRSTNONBLANK ( SlicerTable[SlicerColumn], 0 ), [MyColumn], 1, -1 ) > -1
            || NOT ISFILTERED ( SlicerTable[SlicerColumn] )
    ),
    [Value]
)

不要害怕这个DAX表达式,它基本检查MyColumn列是否包含在切片器中选择的任何值,如果在切片器中没有选择,它会将[Value]列的所有值相加。

使用矩阵或任何具有MyColumn列和Result度量的Power BI可视化,您将获得类似以下内容:

UPDATE对切片器的替代支持,无需使用显式关系和添加表的必要度量。

为了支持您的切片请求,我已经向您的模型中添加了两个附加表。您将不得不创建一个额外的表来支持多对多关系和其他,以获得唯一的类别值。

Data

当您使用CategorySlicer[Slicer]列添加切片器时,它将自动过滤Service表,因为底层表之间存在显式关系。

如果您在创建所需的表时遇到困难,我想到了几个DAX表达式来创建它们。

还要确保在每个关系中将Cross Filter Direction关系属性设置为Both

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42404400

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档