홈>
각 ID, 각 ID의 첫 번째 레코드와 각 버전이 0 인 각 반복에 대한 일 (행별)의 차이를 계산해야합니다. 코드 스 니펫을 거의 시도하지 않았지만 다음과 같이 작동하지 않았습니다.
Calculated Time =
VAR Index = Table[Version]
VAR Reference = Table[Id]
VAR Prevtime =
CALCULATE (
FIRSTNONBLANK ( Table[Date], TRUE () ),
FILTER (Table, Table[Id] = Reference && Table[Version] = Index)
)
RETURN
Table[Date] - Prevtime
원하는 결과 :
ID Version Date Calculated time Formula
12345 1 11/1/2018 8:08 0 0
12345 1 11/16/2018 8:39 15.02152778 =C3-C2
12345 1 11/16/2018 13:29 0.201388889 =C4-C3
12345 1 11/16/2018 13:32 0.002083333
12345 2 11/16/2018 8:39 0
12345 2 11/26/2018 14:24 10.23958333
12345 2 11/26/2018 14:24 0
12345 3 11/16/2018 8:39 0
12345 3 12/6/2018 12:13 20.14861111
12345 3 12/6/2018 12:20 0.004861111
모든 의견을 부탁드립니다. 위 코드를 변경해야하거나 도움을 줄 수 있는지 알려주십시오.
-
답변 # 1
관련 질문
- powerbi - 후속 Dax Drop Duplicates
- powerbi - dax - 측정 값 필터링 :하나가 아닌 두 개의 측정 값을 필터링하는 방법?
- powerbi - 지난 12 개월간 표시
- powerbi - AVERAGEX 함수에 FILTER를 추가하면 Power BI에 오류가 발생합니다
- powerbi - rankx는 올바른 결과를 제공하지 않습니다 - powe bi desktop
- powerbi - Power BI에서 슬라이서의 값을 제외한 증분 값으로 차트의 사용자 이름을 대체하는 방법
- 계산 열-DAX IN POWERBI를 사용하여 여러 값의 테이블이 제공되었습니다
- powerbi - 날짜 사이에 1 - 1 관계를 만드는 방법
- powerbi - Power bi에서 사용자 정의 범례를 작성하는 방법은 무엇입니까?
- powerbi - 역할별로 열을 나누지 않고 Power BI를 합산
다음과 같은 것을 찾고 있다고 생각합니다 :
다음과 같이 작동합니다 :
와이즈 비즈 현재 행의 [ID] 및 [Version]에서 필터링 된 'Table'테이블을 반환합니다. 그런 다음 계산 함수는 필터링 된 테이블에서 현재 행의 [날짜]보다 작은 가장 큰 [날짜]를 계산합니다.
EARLIER 함수는 현재 행에서 [날짜] 값을 얻기 위해 행 컨텍스트 인 이전 필터 컨텍스트로 이동하는 데 사용됩니다.
따라서 VAR prevTime은 [ID]와 [Version]이 동일한 이전 [Date]입니다. 이전 [Date]가 존재하지 않으면 prevTime은 공백입니다.
Calculated time = VAR prevTime = CALCULATE ( MAX ( 'Table'[Date] ), ALLEXCEPT ( 'Table', 'Table'[ID], 'Table'[Version] ), 'Table'[Date] < EARLIER ( 'Table'[Date] ) ) RETURN IF ( ISBLANK ( prevTime ), BLANK (), 'Table'[Date] - prevTime )