0

数据1:

ID Value 
2   114    
3   108    
4   107    
5   113    
6   112    
7   106    
8   109  

Power BI(DAX)中所需的数据:

ID Value last_recovery_id
2   114    5
3   108    4
4   107    X
5   113    6
6   112    7
7   106    X
8   109  

基本上我想知道价格上涨之后的最后一个ID。

4

1 回答 1

0

您可以尝试以下措施-

last_recovery_id = 
var current_row_value = min(your_table_name[Value])
var current_row_id = min(your_table_name[ID])
var previous_max_value = 
CALCULATE(
    MAX(your_table_name[Value]),
    FILTER(
        ALL(your_table_name),
        your_table_name[Value] < current_row_value
        && your_table_name[ID] > current_row_id
    )
)

var prevous_id =  
CALCULATE(
    MAX(your_table_name[id]),
    FILTER(
        ALL(your_table_name),
        your_table_name[Value] = previous_max_value
        && your_table_name[ID] > current_row_id
    )
)

RETURN IF(prevous_id = BLANK(),"X", prevous_id)

输出是-

在此处输入图像描述

于 2021-01-01T10:56:37.403 回答