하나 이상의 검색 조건에 지정된 모든 조건을 충족하는 행의 값을 반환합니다.
구문
LOOKUPVALUE (
<result_columnName>,
<search_columnName>,
<search_value>
[, <search2_columnName>, <search2_value>]…
[, <alternateResult>]
)
매개 변수
| 변수 | 정의 |
|---|---|
result_columnName |
반환하려는 값이 포함된 기존 열의 이름입니다. 식이 될 수 없습니다. |
search_columnName |
기존 열의 이름입니다. result_columnName 같은 테이블이나 관련 테이블에 있을 수 있습니다. 식이 될 수 없습니다. 여러 쌍의 search_columnName 및 search_value 지정할 수 있습니다. |
search_value |
search_columnName 검색할 값입니다. 여러 쌍의 search_columnName 및 search_value 지정할 수 있습니다. |
alternateResult |
(선택 사항) result_columnName 컨텍스트를 0개 이상의 고유 값으로 필터링할 때 반환되는 값입니다. 지정하지 않으면 result_columnName 0 값으로 필터링되거나 result_columnName 컨텍스트에 둘 이상의 고유 값이 있는 경우 오류가 반환 BLANK 됩니다. |
반환 값
result_columnName 및 search_columnName 모든 쌍이 정확히 일치하는 행의 search_value 값입니다.
일치하는 항목이 없으면 모든 검색 값이 반환되거나 alternateResult (지정된 경우) 함수가 반환 BLANK 됩니다. 즉, 일부 조건만 일치하는 경우 함수는 조회 값을 반환하지 않습니다.
여러 행이 검색 값과 일치하고 이러한 행의 result_columnName 값이 동일하면 해당 값이 반환됩니다. 그러나 다른 값을 반환하는 경우 result_columnName 함수는 오류를 반환하거나 alternateResult (지정된 경우) 반환합니다.
비고
결과 열이 포함된 테이블과 검색 열이 포함된 테이블 사이에 관계가 있는 경우 대부분의 경우 함수 대신 LOOKUPVALUE 함수를 RELATED 사용하는 것이 더 효율적이며 성능이 향상됩니다.
여러 쌍
search_columnName을 지정할 수 있습니다.search_valuesearch_value및alternateResult매개 변수는 함수가 검색 테이블의 행을 반복하기 전에 평가됩니다.에서 반환LOOKUPVALUE한 오류를 사용 ISERROR 하거나 IFERROR 캡처하지 않습니다. 단일 출력 값을 확인할 수 없는 경우 함수에 대한 일부 입력으로 인해 오류가 발생하는 경우 매개 변수를
alternateResult제공하는 것이 오류를 처리하는 가장 안정적이고 성능이 뛰어난 방법입니다.alternateResult매개 변수는 파워 피벗 계산 열에 지정된 경우 오류를 반환합니다.-
이 함수는 계산 열 또는 RLS(행 수준 보안) 규칙에서 사용되는 경우 DirectQuery 모드에서 사용할 수 없습니다.
이 문서의 예제는 Adventure Works DW 2020 Power BI Desktop 모델 샘플과 함께 사용할 수 있습니다. 모델을 얻으려면 DAX 샘플 모델참조하세요.
예제 1
이 예제에서는 LOOKUPVALUE 주문이 이루어진 날 주문에 대해 지불하는 데 사용되는 통화에 대한 평균 요금을 검색합니다.
Exchange Rate =
LOOKUPVALUE (
'Currency Rate'[Average Rate],
'Currency Rate'[CurrencyKey], [CurrencyKey],
'Currency Rate'[DateKey], [OrderDateKey]
)
올바른 날짜와 통화에 대한 평균 요금을 찾으려면 주문 날짜와 통화가 모두 필요합니다. OrderDateKey 및 CurrencyKey는 통화 비율 테이블에서 평균 금리를 조회하는 데 사용되는 키입니다.
환율을 사용하여 다음을 사용하여 현지 통화로 판매액을 계산할 수 있습니다.
Sales Amount Local Currency =
[Sales Amount] * [Exchange Rate]
예제 2
이 예제에서 Sales 테이블에 정의된 다음 계산 열은 LOOKUPVALUE 함수를 사용하여 Sales Order 테이블에서 채널 값을 반환합니다.
CHANNEL =
LOOKUPVALUE (
'Sales Order'[Channel],
'Sales Order'[SalesOrderLineKey], [SalesOrderLineKey]
)
그러나 이 경우 Sales Order 와 Sales 테이블 사이에 관계가 있기 때문에 함수를 사용하는 RELATED 것이 더 효율적입니다.
CHANNEL =
RELATED ( 'Sales Order'[Channel] )