VALUEINLARGE ER funkcija
Funkcija VALUEINLARGE
nustato, ar nurodytas Int64ar Integer tipo įvestis atitinka bet kokią nurodyto elemento vertę nurodytame sąraše. Funkcija grąžina Būlio logikosvertę TEISINGA , jei nurodyta įvestis atitinka nurodytos išraiškos, vykdomos mažiausiai vienam nurodyto sąrašo įrašui, rezultatą. Kitu atveju grąžinama Būlio logikos vertė FALSE. Norėdami suprasti skirtumą su funkcija VALUEIN
, žr. toliau šiame straipsnyje skyriuje Naudojimo pastaba.
Sintaksė
VALUEINLARGE (input, list, list item expression)
Argumentai
input
: Laukas
Tinkamas įrašų sąrašo tipo duomenų šaltinio elemento maršrutas . Šio elemento vertė bus sugretinta.
list
: Įrašų sąrašas
Tinkamas įrašų sąrašo duomenų tipo duomenų šaltinio maršrutas.
list item expression
: išraiška
Tinkama sąlyginė išraiška nurodo išraišką, kuri nurodo vieną sugretinimui naudotiną konkretaus sąrašo lauką arba kurioje toks laukas yra.
Grįžties vertės
Bulio logikos
Gauta Būlio logikos vertė.
Naudojimo pastabos
Kai nurodyta įvestis rodo duomenų šaltinio elemento Int64arba Integer tipą; iškvietimas, kuris gali būti transliuojamas į tiesioginį SQL sakinį, nurodytas sąrašas konvertuojamas į laikiną SQL EXISTS JOIN
lentelę ir sugretinimas atliekamas duomenų bazėje vykdant vieną užklausą. Kitu atveju ši funkcija veikia kaip VALUEIN
funkcija.
Kai nurodyta įvestis nurodo duomenų šaltinio elementą, kuris sukurtas kaip prekė, kita nei Int64ir Integer tipo, dizaino metu įvyko klaida, VALUEINLARGE
informuojant, kad funkcija netaikoma sukonfigūruotai ER išraiškai.
Kai vykdoma VALUEINLARGE
funkcijos išraiška ir į šio vykdymo aprėptį naudojama daugiau nei viena laikina lentelė, įvyksta apdorojimo laiko klaida.
Pavyzdys
Apibrėžkite šiuos modelio susiejimo duomenų šaltinius:
- Lentelės įrašų tipo duomenų šaltinyje .
- Šis duomenų šaltinis nurodo Intrastat lentelę.
- Parinktis Kryžminė įmonė nustatyta kaip Ne.
- Apskaičiuoto lauko tipo InMemoryduomenų šaltinis.
- Šiame duomenų šaltinyje yra išraiška
WHERE (In, In.Port <> "")
.
- Šiame duomenų šaltinyje yra išraiška
- Apskaičiuoto lauko tipo InFilteredduomenų šaltinis.
- Šiame duomenų šaltinyje yra išraiška
FILTER (In, VALUEINLARGE(In.RecId, InMemory, InMemory.RecId)
.
- Šiame duomenų šaltinyje yra išraiška
Kai duomenų šaltinis InFilterediškviejamas įmonės DEMF kontekste, programos duomenų bazėje sukuriama nauja laikina lentelė, į šią lentelę įterpiamas įrašų identifikavimo kodų atminties sąrašas, o siekiant grąžinti filtruotus Intrastat lentelės įrašus sugeneruojamas šis SQL sakinys.
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)))
Papildomi ištekliai
Atsiliepimai
https://aka.ms/ContentUserFeedback.
Jau greitai: 2024 m. palaipsniui atsisakysime „GitHub“ problemų, kaip turiniui taikomo atsiliepimų mechanizmo, ir pakeisime jį nauja atsiliepimų sistema. Daugiau informacijos žr.Pateikti ir peržiūrėti atsiliepimą, skirtą