VALUEINLARGE ER-funktioner
VALUEINLARGE
-funktion bestämmer om specifik indata av typen Int64 eller heltal matchar något värde för en angiven objekt i den angivna listan. Funktionen returnerar ett booleskt värde på SANT om den angivna indata matchar resultatet av att köra det angivna uttrycket för minst en post i den angivna listan. Annars returnerar uttrycket värdet boolesk av FALSK. Mer information om skillnaden med VALUEIN
-funktionen finns i avsnittet om användningsnotering senare i den här artikeln.
Syntax
VALUEINLARGE (input, list, list item expression)
Argument
input
: Fält
Den giltiga sökvägen av en datakällaartikel för typen Postlista. Värdet för det här objektet kommer att matchas.
list
: Post-lista
Den giltiga sökvägen av en datakälla för datatypen Postlista.
list item expression
: Uttryck
Ett giltigt villkorsuttryck som antingen refererar till eller innehåller ett enskilt fält för den angivna listan som ska användas för matchningen.
Returvärden
Booleskt
Det resulterande booleska värdet.
Användningsanteckningar
När angiven inmatning representerar en Int64 eller typen heltal för ett datakällaartikel, kommer den angivna listan att konverteras till ett temporärt SQL-register och matchas i databasen genom att en enda EXISTS JOIN
-fråga körs. I annat fall fungerar funktionen som VALUEIN
-funktion.
När angivet indata representerar ett datakällaartikel som är utformat som ett annat objekt än Int64 och integer uppstår ett fel vid designtillfället som informerar dig om att VALUEINLARGE
-funktionen inte kan användas för det konfigurerade ER-uttrycket.
När VALUEINLARGE
-funktionsuttrycket körs och mer än en temporär tabell används i denna körnings omfång uppstår ett fel vid körning.
Exempel
Du definierar följande datakällor i din modellmappning:
- Datakällan In för typen tabellposter.
- Den här datakällan refererar till tabellen Intrastat.
- Alternativet mellan företag är inställt på Nej.
- InMemory-datakällan för typen beräknade fält.
- Datakällan innehåller uttrycket
WHERE (In, In.Port <> "")
.
- Datakällan innehåller uttrycket
- InFiltered-datakällan för typen beräknade fält.
- Datakällan innehåller uttrycket
FILTER (In, VALUEINLARGE(In.RecId, InMemory, InMemory.RecId)
.
- Datakällan innehåller uttrycket
När datakällan InFiltered anropas under företagets DEMF skapas en ny temporär tabell i programdatabasen, som samlas in i minneslistan med post-ID-koder infogas i den här tabellen och följande SQL-sats skapas för att returnera filtrerade poster från Intrastat.
SELECT … from Intrastat T1
WHERE ((T1.PARTITION=?) AND (T1.DATAAREAID IN (N'DEMF'))) AND
EXISTS (SELECT 'x' FROM tempdb."DBO".? T2 WHERE ((T2.PARTITION=?) AND (T1.RecId=T2.RecId)))