Aky*_*kyl 5 rownum dax powerbi
有人可以帮我将 sql 字符串转换为 Dax 吗?
row_number() p over(按日期、客户分区、按天输入订单)
行号是我想要的输出。
假设您的数据如下表所示:
Sample
+------------+----------+---------+--------+
| Date | Customer | Product | Gender |
+------------+----------+---------+--------+
| 01/01/2018 | 1234 | P2 | F |
| 01/01/2018 | 1234 | P2 | M |
| 03/01/2018 | 1235 | P1 | F |
| 03/01/2018 | 1235 | P2 | F |
+------------+----------+---------+--------+
Run Code Online (Sandbox Code Playgroud)
我使用 RANKX 和 FILTER 函数创建了一个名为 Rank 的计算列。
计算的第一部分是在 FILTER 函数范围之外创建变量。第二部分使用 RANKX,它采用表达式值(在本例中为 Gender)来对值进行排序。
Rank =
VAR _currentdate = 'Sample'[Date]
VAR _customer = 'Sample'[Customer]
var _product = 'Sample'[Product]
return
RANKX(FILTER('Sample',
[Date]=_currentdate &&
[Customer] = _customer &&
[Product] = _product),[Gender],,ASC)
Run Code Online (Sandbox Code Playgroud)
输出是
我将输出与 SQL 等效项进行了对比。
select
*,
row_number() over(partition by Date,Customer,Product order by Gender)
from (
select '2018-01-01' as Date,1234 as CUSTOMER,'P2' AS PRODUCT, 'M' Gender union
select '2018-01-01' as Date,1234,'P2','F' UNION
select '2018-01-03' as Date,1235,'P1','F' UNION
select '2018-01-03' as Date,1235,'P2','F'
)t1
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7418 次 |
最近记录: |