【问题标题】:How to convert SQL query to Power BI DAX query?如何将 SQL 查询转换为 Power BI DAX 查询?
【发布时间】:2020-08-10 07:19:57
【问题描述】:

Desired Output

您好,我想将我的 sql 查询转换为 DAX 度量,以过滤所有仅具有排名 1 的数据。我一直在尝试使用 RankX(Filter) 但我得到了重复的排名。谢谢

row_number() over(按日期、客户、按天排序)

┌──────────┬──────────┬──────┬──────┬────────────── ┬ │ 天 │ 客户 │ 天 │ 类型 │ 期望排名 │ ├──────────┼──────────┼──────┼──────┼────────────── │ 6/1/2020 │ DDD │ 1 │ D │ 1 │ │ 6/1/2020 │ DDD │ 0 │ M │ 1 │ │ 6/1/2020 │ DDD │ 1 │ D │ 2 │ │ 6/1/2020 │ DDD │ 0 │ M │ 3 │ │ 6/1/2020 │ FFF │ 0 │ M │ 1 │ │ 6/1/2020 │ FFF │ 0 │ M │ 2 │ │ 6/1/2020 │ FFF │ 0 │ M │ 3 │ │ 6/1/2020 │ FFF │ 0 │ M │ 4 │ │ 6/1/2020 │ BBB │ 1 │ D │ 1 │ │ 6/1/2020 │ BBB │ 0 │ M │ 1 │ │ 6/1/2020 │ BBB │ 0 │ M │ 2 │ │ 6/1/2020 │ BBB │ 0 │ M │ 3 │ │ 6/2/2020 │ FFF │ 2 │ D │ 1 │ │ 6/2/2020 │ BBB │ 2 │ D │ 1 │ │ 6/3/2020 │ FFF │ 3 │ D │ 1 │ │ 6/3/2020 │ FFF │ 3 │ D │ 2 │ │ 6/3/2020 │ FFF │ 3 │ D │ 3 │ │ 6/4/2020 │ DDD │ 4 │ D │ 1 │ │ 6/4/2020 │ DDD │ 4 │ D │ 2 │ │ 6/4/2020 │ DDD │ 4 │ D │ 3 │ │ 6/4/2020 │ FFF │ 4 │ D │ 1 │ │ 6/4/2020 │ FFF │ 4 │ D │ 2 │ │ 6/5/2020 │ EEE │ 5 │ D │ 1 │ │ 6/5/2020 │ EEE │ 5 │ D │ 2 │ │ 6/5/2020 │ DDD │ 5 │ D │ 1 │ │ 6/5/2020 │ DDD │ 5 │ D │ 2 │ │ 6/5/2020 │ DDD │ 5 │ D │ 3 │ │ 6/5/2020 │ FFF │ 5 │ D │ 1 │ └──────────────────────┴──────┴──────┴────────────── ┘

【问题讨论】:

  • 请为您的问题添加更多详细信息。阅读本文以获得一些指导。 stackoverflow.com/help/how-to-ask
  • 在此处以表格而不是图像的形式提供具有预期输出的相同数据。

标签: sql powerbi dax rank row-number


【解决方案1】:

按照以下步骤获得所需的输出。

步骤 1: 转到 Power Query 编辑器 并将索引列添加到您的表中,如下图所示。这是必需的,因为您在日期、客户、类型组合的多行中具有相同的值。我尝试过,但发现意外的 RANKX 正在生成,因为在一个组的所有行中具有相同的值。为此,创建了索引列。

创建索引列是为了在每一行中保持不同的值。本专栏没有其他用途。

第 2 步:点击“关闭并应用”按钮返回报告。

第 3 步:现在使用以下代码在您的表中创建一个自定义列-

group_wise_rank = 

RANKX (
    FILTER (
        'your_table_name',
        'your_table_name'[Date] = EARLIER ('your_table_name'[Date])
            && 'your_table_name'[Customer] = EARLIER ('your_table_name'[Customer])
            && 'your_table_name'[Type] = EARLIER ('your_table_name'[Type])
    ),
    'your_table_name'[Index],
    ,
    ASC
)

这些技巧应该对你有用。

【讨论】:

  • 很高兴听到它有帮助。请接受答案并投赞成票:) @Akyl
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-08
  • 1970-01-01
  • 2022-01-09
  • 2020-07-19
相关资源
最近更新 更多