Power BI 多列排序问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Power BI 多列排序问题相关的知识,希望对你有一定的参考价值。

参考技术A 新增计算列,录入需要排序的字段

Index =

VAR p = [Power Level]

VAR n = [Name]

VAR a = [Age]

VAR t1 = 'Table3'

VAR t2 =

    FILTER ( 'Table3', 'Table3'[Power Level] = p )

VAR t3 =

    FILTER ( 'Table3', 'Table3'[Power Level] = p && 'Table3'[Age] = a )

RETURN

    RANKX (

        t1,

        RANKX ( t1, [Power Level],, ASC, SKIP ) * 100

            + RANKX ( t2, [Age],, ASC, SKIP ) * 10

            + RANKX ( t3, [Name],, ASC, SKIP ),

        ,

        DESC,

        SKIP

    )

在 Power BI 中对公历日期进行排序

【中文标题】在 Power BI 中对公历日期进行排序【英文标题】:Sort Gregorian date in Power BI 【发布时间】:2020-12-21 07:52:16 【问题描述】:

在 power bi 中,我有一个日期表,其中包含自 1970 年以来的公历日期和太阳日期。如何对太阳月进行排序?或者如何对包含英语以外的字母的滑块进行排序?

【问题讨论】:

请添加一些您想要的输出数据。 我的日期表包含字段:GDate、GYear、GMonth、GDay、SDate、SYear、SMonth、SDay,此表包含自 1970 年以来的所有日期,例如 9/2/2020、2020、02、09 , 12/06/1399 1399 06 12. 现在我想在从 1 到 12 排序的滑块中使用字段 SMonth。我该怎么做? 【参考方案1】:

如果您希望您的月份名称在切片器中按字母顺序排序(例如首先是 A,然后是 B.... 最后是 Z),而不是使用月份值,您可以创建一个 自定义Date 表中的列,每个日期都有月份名称。

在源中创建新的自定义列后,将类型更改为文本/常规。现在使用这个新的自定义列创建您的月份切片器。现在将按字母顺序显示月份名称。

您可以使用 DAX 和 Power Query 从日期值中获取月份名称。

DAX: MonthName = FORMAT([Date],"mmmm")
M/Power Query: MonthName = Date.MonthName(date_column_name, "en-US")

最后将数据类型转换为Text/General。

创建新自定义列的过程

右键单击日期表并选择新建自定义列,如下图所示-

现在放入DAX代码并更改数据类型,如下图所示-

【讨论】:

谢谢,但我不知道如何将值添加到度量列。 我已经完成了与 ssas 的实时连接,但我找不到添加新列 另外,我想根据波斯语订购。 尝试在 SSAS 中创建列,如果波斯语不给您正常的字母顺序,您还需要另一个数字列来控制排序。

以上是关于Power BI 多列排序问题的主要内容,如果未能解决你的问题,请参考以下文章

Power Query中如何把多列数据合并?

Element表格el-table多列排序,后端接口排序

SQL 多列排序

SQL 多列排序

在 PyQt 模型中按多列排序

GridView多列排序