Jaa


LOOKUPVALUE

Koskee seuraavia:Laskettu sarakeLaskettu taulukkoMittayksikköVisuaalinen laskenta -

Palauttaa rivin arvon, joka täyttää kaikki yhden tai useamman hakuehdon määrittämät ehdot.

Syntaksi

LOOKUPVALUE (
    <result_columnName>,
    <search_columnName>,
    <search_value>
    [, <search2_columnName>, <search2_value>]…
    [, <alternateResult>]
)

Parametrit

Termi Määritelmä
result_columnName Sen olemassa olevan sarakkeen nimi, joka sisältää palautettavan arvon. Se ei voi olla lauseke.
search_columnName Olemassa olevan sarakkeen nimi. Se voi olla samassa taulukossa kuin result_columnName tai liittyvässä taulukossa. Se ei voi olla lauseke. Voit määrittää useita search_columnName ja search_value pareja.
search_value Kohteessa search_columnName etsittävä arvo. Voit määrittää useita search_columnName ja search_value pareja.
alternateResult (Valinnainen) Palautettu arvo, kun result_columnName konteksti on suodatettu nollaan tai yli yhteen erilliseen arvoon. Jos tätä ei määritetä, funktio palauttaa BLANK, kun result_columnName suodatetaan nollaan arvoihin asti, tai virheen, kun result_columnName kontekstissa on useampi kuin yksi erillinen arvo.

Palautusarvo

Arvo result_columnName rivillä, jossa kaikilla search_columnName ja search_value pareilla on tarkka vastaavuus.

Jos kaikkia hakuarvoja tyydyttävää vastaavuutta ei ole, palautetaan BLANK tai alternateResult (jos määritetty). Toisin sanoen funktio ei palauta hakuarvoa, jos vain jotkin ehdoista täyttyvät.

Jos useat rivit vastaavat hakuarvoja ja näiden rivien result_columnName arvot ovat identtisiä, silloin kyseinen arvo palautetaan. Jos result_columnName kuitenkin palauttaa eri arvoja, palautetaan virheilmoitus tai alternateResult (jos määritetty).

Huomautuksia

  • Jos taulukon, joka sisältää hakusarakkeet sisältävän tulossarakkeen ja taulukoiden, välillä on yhteys, useimmissa tapauksissa RELATED-funktion käyttö LOOKUPVALUE sijaan on tehokkaampaa ja tarjoaa paremman suorituskyvyn.

  • Useita search_columnName- ja search_value-pareja voidaan määrittää.

  • search_value ja alternateResult parametrit arvioidaan ennen kuin funktio iteroi hakutaulukon rivien läpi.

  • Vältä ISERROR- tai IFERROR funktioiden käyttämistä LOOKUPVALUEpalauttaman virheen sieppaamiseen. Jos jotkin funktion syötteet aiheuttavat virheen, kun yksittäistä tulostearvoa ei voida määrittää, alternateResult parametrin tarjoaminen on luotettavin ja tehokkain tapa käsitellä virhe.

  • alternateResult-parametri palauttaa virheen, jos se on määritetty power pivotin lasketussa sarakkeessa.

  • Tätä funktiota ei tueta DirectQuery-tilassa lasketuissa sarakkeissa tai rivitason suojauksen (RLS) säännöissä käytettäväksi.

Esimerkki 1

Tässä esimerkissä LOOKUPVALUE käytetään hakuun Tilauksen tilauspäivän tilauksen yhteydessä käytetyn valuutan keskihinta:

Exchange Rate = 
LOOKUPVALUE (
    'Currency Rate'[Average Rate],
    'Currency Rate'[CurrencyKey], [CurrencyKey],
    'Currency Rate'[DateKey], [OrderDateKey]
)

Oikean päivämäärän ja valuutan keskiarvon etsiminen edellyttää sekä tilauspäivämäärää että valuuttaa. OrderDateKey ja CurrencyKey ovat avaimia, joita käytetään keskimääräisen kurssin etsimiseen Valuuttaprosentti-taulukosta.

Vaihtokurssin avulla voit laskea myyntisumman paikallisena valuuttana käyttäen:

Sales Amount Local Currency = [Sales Amount] * [Exchange Rate]

Esimerkki 2

Tässä esimerkissä seuraava sales -määritetty laskettu sarake käyttää -funktiota kanava-arvojen palauttamiseen Myyntitilaus-taulukosta.

CHANNEL = 
LOOKUPVALUE (
    'Sales Order'[Channel],
    'Sales Order'[SalesOrderLineKey],
    [SalesOrderLineKey]
)

Koska Sales Order - ja Sales-taulukoiden välillä on yhteys, on kuitenkin tehokkaampaa käyttää -funktiota.

CHANNEL = RELATED('Sales Order'[Channel])

RELATED-funktio (DAX)Information-funktiot