LOOKUPVALUE
Vzťahuje sa na:vypočítaný stĺpec
vypočítanej tabuľky
vizuálového výpočtu
Vráti hodnotu pre riadok, ktorý spĺňa všetky kritériá zadané na základe jednej alebo viacerých podmienok vyhľadávania.
Syntax
LOOKUPVALUE (
<result_columnName>,
<search_columnName>,
<search_value>
[, <search2_columnName>, <search2_value>]…
[, <alternateResult>]
)
Parametre
Termín | Definícia |
---|---|
result_columnName |
Názov existujúceho stĺpca, ktorý obsahuje hodnotu, ktorú chcete vrátiť. Nemôže to byť výraz. |
search_columnName |
Názov existujúceho stĺpca. Môže sa nachádzať v rovnakej tabuľke ako result_columnName alebo v súvisiacej tabuľke. Nemôže to byť výraz. Je možné zadať viacero párov search_columnName a search_value. |
search_value |
Hodnota, ktorá sa má vyhľadávať v search_columnName. Je možné zadať viacero párov search_columnName a search_value. |
alternateResult |
(Voliteľné) Hodnota vrátená, keď je kontext pre result_columnName filtrovaný nadol na nulu alebo na viac ako jednu rôznu hodnotu. Ak parameter nie je zadaný, funkcia vráti BLANK, keď sa result_columnName vyfiltruje na nulové hodnoty, alebo vráti chybu, keď v kontexte pre result_columnName existuje viac ako jedna jedinečná hodnota. |
Vrátená hodnota
Hodnota result_columnName
v riadku, v ktorom majú všetky páry search_columnName
a search_value
presnú zhodu.
Ak nie je splnená zhoda, ktorá spĺňa všetky hodnoty vyhľadávania, vráti sa hodnota BLANK alebo alternateResult
(ak je zadaná). Inými slovami, funkcia nevráti vyhľadávanú hodnotu, ak sa zhodujú iba niektoré kritériá.
Ak viaceré riadky zodpovedajú hľadaným hodnotám a hodnoty v result_columnName
pre tieto riadky sú identické, vráti sa táto hodnota. Ak však result_columnName
vráti rôzne hodnoty, vráti sa chyba alebo alternateResult
(ak je zadaná).
Poznámky
Ak existuje vzťah medzi tabuľkou, ktorá obsahuje stĺpec výsledkov a tabuľky, ktoré obsahujú vo väčšine prípadov stĺpce vyhľadávania, použitie funkcie RELATED namiesto LOOKUPVALUE je efektívnejšie a poskytuje lepší výkon.
Možno zadať viacero párov
search_columnName
asearch_value
.Parametre
search_value
aalternateResult
sa vyhodnocujú, kým funkcia prejde riadkami tabuľky vyhľadávania.Nepoužívajte funkcie ISERROR ani IFERROR na zaznamenanie chyby, ktorú vrátila funkcia LOOKUPVALUE. Ak niektoré vstupy do funkcie vedú k chybe, keď nie je možné určiť jednu výstupnú hodnotu, zadajte parameter
alternateResult
najspoľahlivejší a najspoľahlivejší spôsob, ako spracovať chybu.Parameter
alternateResult
vráti chybu, ak je zadaný vo vypočítanom stĺpci doplnku Power Pivot.Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).
Príklad č. 1
V tomto príklade sa LOOKUPVALUE používa na vyhľadávanie priemernej sadzby pre menu, ktorá sa používa na zaplatenie objednávky v deň, kedy bola objednávka umiestnená:
Exchange Rate =
LOOKUPVALUE (
'Currency Rate'[Average Rate],
'Currency Rate'[CurrencyKey], [CurrencyKey],
'Currency Rate'[DateKey], [OrderDateKey]
)
Na vyhľadanie priemernej sadzby pre správny dátum a menu sa vyžaduje dátum objednávky aj mena. OrderDateKey a CurrencyKey sú kľúče používané na vyhľadanie priemerného kurzu v tabuľke Menový kurz.
Pomocou výmenného kurzu môžete vypočítať Čiastku predaja v lokálnej mene pomocou:
Sales Amount Local Currency = [Sales Amount] * [Exchange Rate]
Príklad č. 2
Nasledujúci vypočítaný stĺpec definovaný v tabuľke Sales používa funkciu LOOKUPVALUE na vrátenie hodnôt kanála z tabuľky Predajná objednávka.
CHANNEL =
LOOKUPVALUE (
'Sales Order'[Channel],
'Sales Order'[SalesOrderLineKey],
[SalesOrderLineKey]
)
Keďže však existuje vzťah medzi tabuľkami Sales Order a Sales, je efektívnejšie používať funkciu RELATED.
CHANNEL = RELATED('Sales Order'[Channel])
Súvisiaci obsah
Funkcia RELATED (DAX)informačné funkcie