LOOKUP

Van toepassing op:Berekende kolomBerekende tabelMetenVisuele berekening

Retourneert de waarde of evalueert de expressie uit de visualmatrix met behulp van absolute navigatie. Filters kunnen worden opgegeven voor elke as in de visualmatrix. Eventuele weggelaten filters worden afgeleid uit de context. Als er geen enkele waarde kan worden bepaald, wordt er een fout geretourneerd.

Syntaxis

LOOKUP(<expression>, <colref>, <expression>[, <colref>, <expression>]...[, <AssociatedColumnsBehavior>])

Parameterwaarden

Termijn Definitie
expression De expressie die moet worden geëvalueerd.
colref (Optioneel) De kolom die moet worden gefilterd.
expression (Optioneel) De waarde die moet worden gefilterd.
AssociatedColumnsBehavior (Optioneel) Hiermee geeft u op hoe gekoppelde kolommen worden verwerkt. Toegestane waarden zijn EXPLICIT (standaard) of INFERRED.

Retourwaarde

De waarde van de expressie nadat filters zijn toegepast.

Als er geen overeenkomst is, wordt er een fout geretourneerd.

Als meerdere rijen overeenkomen met de filters, wordt een fout geretourneerd.

Remarks

De parameter AssociatedColumnsBehavior bepaalt hoe LOOKUP askolommen verwerkt die functioneel worden bepaald door de opgegeven coördinaten:

  • EXPLICIET (standaard): Wanneer de parameter wordt weggelaten of ingesteld EXPLICITop, gebruikt LOOKUP alleen de filters die u expliciet opgeeft. Askolommen die niet zijn opgegeven, worden afgeleid uit de huidige context. Dit is het oorspronkelijke opzoekgedrag.

  • INFERRED: Wanneer deze is ingesteld INFERRED, identificeert de engine welke askolommen functioneel worden bepaald door de opgegeven coördinaten en vult deze automatisch in voordat de zoekactie wordt geëvalueerd. Als u bijvoorbeeld filtert op Jaar, Kwartaal en Maand, kan de engine gerelateerde kolommen afleiden, zoals de dag of week die overeenkomen met die coördinaten.

Wanneer INFERRED dit is opgegeven en u een waarde opgeeft voor een kolom die zou zijn afgeleid, wordt de opgegeven waarde gevalideerd op basis van de uitgestelde waarde. Als ze conflicteren, retourneert BLANKde aanroep, vergelijkbaar met hoe EXPLICIT u retourneert BLANK wanneer u conflicterende coördinaten opgeeft.

Voorbeeld 1

In dit voorbeeld haalt LOOKUP de som van de verkoop voor fietsencategorie op. Het eerste argument kan een kolom of een scalaire expressie zijn.

Lookup Example 1 = LOOKUP(SUM([Sales Amount]),  [Category], "Bikes")
Lookup Example 2 = LOOKUP([Sales Amount], [Category], "Bikes")

In de onderstaande schermopname ziet u de matrix met twee visuele berekeningen.

voorbeeld van opzoeken 1

Voorbeeld 2

In dit voorbeeld wordt met de visual LookupExample2 de som van de omzet voor fiscaal jaar FY2018 opgehaald. U ziet dat het kwartaalfilter van de rij wordt gebruikt omdat het niet expliciet is opgegeven, waardoor er geen resultaten worden geretourneerd voor FY2019 Q1 naar FY2019 Q4 sinds de combinatie van FY2018 en FY2019 Q1 naar FY2019 Q4 niet bestaat. LookupExample3 geeft expliciet het kwartaal aan, dus houdt geen rekening met het huidige kwartaal op de rij.

LookupExample2 = LOOKUP([Sales Amount], [Fiscal Year], "FY2018")
LookupExample3 = LOOKUP([Sales Amount], [Fiscal Year], "FY2018", [Fiscal Quarter], "FY2018 Q1")

voorbeeld van opzoeken 2

Voorbeeld 3

In dit voorbeeld ziet u het verschil tussen EXPLICIT en INFERRED gedrag. In beide visuele berekeningen wordt de som van de verkoop voor januari 2025 opgezoekd door de coördinaten Jaar, Kwartaal en Maandnaam op te geven.

Jan 2025 Sales (Explicit) = LOOKUP([Sum of Sales], [Year], 2025, [Quarter], "Q1", [Month Name], "January", EXPLICIT)
Jan 2025 Sales (Inferred) = LOOKUP([Sum of Sales], [Year], 2025, [Quarter], "Q1", [Month Name], "January", INFERRED)

Met EXPLICITde zoekactie wordt alleen een waarde geretourneerd in de rij waarin de huidige context overeenkomt met de opgegeven coördinaten (de rij van januari 2025). In alle andere rijen wordt de zoekactie geretourneerd BLANK omdat de context van de huidige rij conflicteert met de opgegeven filters.

Met INFERRED, de engine identificeert automatisch gekoppelde kolommen die functioneel worden bepaald door de coördinaten Year, Quarter en Month Name. Omdat deze coördinaten een bepaald tijdstip uniek identificeren, retourneert de zoekactie de waarde voor alle rijen in de matrix.

voorbeeld van opzoeken 3 met expliciet versus afgeleid gedrag