Hendelser
Bli et sertifisert stoff Dataingeniør
14. jan., 23 - 31. mars, 23
Sjekk din kvalifisering for en eksamen rabatt tilbud og registrere deg for gratis live økter for å forberede eksamen DP-700.
Finn ut merDenne nettleseren støttes ikke lenger.
Oppgrader til Microsoft Edge for å dra nytte av de nyeste funksjonene, sikkerhetsoppdateringene og den nyeste tekniske støtten.
gjelder:beregnet kolonneberegnet tabellmålevisualobjektberegning
Slår sammen to eller flere tekststrenger i én tekststreng. Hovedformålet med denne funksjonen er å støtte flerkolonnerelasjoner i DirectQuery-modeller. Se kommentarer for mer informasjon.
COMBINEVALUES(<delimiter>, <expression>, <expression>[, <expression>]…)
Vilkår | Definisjon |
---|---|
delimiter |
Et skilletegn som skal brukes under sammenkobling. Må være en konstant verdi. |
expression |
Et DAX uttrykk der verdien vil bli koblet til én enkelt tekststreng. |
En sammenføyd streng.
Funksjonen COMBINEVALUES forutsetter, men validerer ikke, at når inndataverdiene er forskjellige, er utdatastrengene også forskjellige. Basert på denne antagelsen, når COMBINEVALUES brukes til å opprette beregnede kolonner for å bygge en relasjon som føyer sammen flere kolonner fra to DirectQuery-tabeller, genereres en optimalisert sammenføyningsbetingelse ved spørringstidspunktet. Hvis brukere for eksempel vil opprette en relasjon mellom Tabell1(Kolonne1, Kolonne2) og Tabell2(Kolonne1, Kolonne2), kan de opprette to beregnede kolonner, én i hver tabell, som:
Table1[CalcColumn] = COMBINEVALUES(",", Table1[Column1], Table1[Column2])
og
Table2[CalcColumn] = COMBINEVALUES(",", Table2[Column1], Table2[Column2])
Deretter oppretter du en relasjon mellom Table1[CalcColumn]
og Table2[CalcColumn]
. I motsetning til andre DAX funksjoner og operatorer, som oversettes bokstavelig talt til tilsvarende SQL-operatorer og -funksjoner, genererer relasjonen ovenfor et SQL-sammenføyningspredikat som:
(Table1.Column1 = Table2.Column1 OR Table1.Column1 IS NULL AND Table2.Column1 IS NULL)
og
(Table1.Column2 = Table2.Column2 OR Table1.Column2 IS NULL AND Table2.Column2 IS NULL)
Sammenføyningspredikatet kan potensielt gi mye bedre spørringsytelse enn en som involverer komplekse SQL-operatorer og funksjoner.
Funksjonen COMBINEVALUES er avhengig av at brukerne velger riktig skilletegn for å sikre at unike kombinasjoner av inndataverdier produserer distinkte utdatastrenger, men det validerer ikke at antagelsen er sann. Hvis brukere for eksempel velger "| "
som skilletegn, men én rad i Tabell1 har Table1[Column1] = "| "
og Table2 [Column2] = " "
, mens én rad i Tabell2 har Table2[Column1] = " "
og Table2[Column2] = "| "
, vil de to sammenkoblede utdataene være de samme "|| "
, som ser ut til å indikere at de to radene er et samsvar i sammenføyningsoperasjonen. De to radene er ikke sammenføyd hvis begge tabellene er fra samme DirectQuery-kilde, selv om de er koblet sammen hvis begge tabellene importeres.
Følgende DAX spørring:
EVALUATE
DISTINCT (
SELECTCOLUMNS ( Date, "Month", COMBINEVALUES ( ", ", [MonthName], [CalendarYear] ) )
)
Returnerer følgende tabell med én kolonne:
[Måned] |
---|
Januar 2020 |
Februar 2020 |
Mars, 2020 |
April, 2020 |
Mai 2020 |
Juni 2020 |
Juli 2020 |
August, 2020 |
September, 2020 |
Oktober 2020 |
November, 2020 |
Desember 2020 |
Januar, 2021 |
Januar, 2021 |
February, 2021 |
Mars, 2021 |
April, 2021 |
Mai 2021 |
Juni, 2021 |
Juli, 2021 |
August, 2021 |
September, 2021 |
Oktober, 2021 |
November, 2021 |
Desember 2021 |
Hendelser
Bli et sertifisert stoff Dataingeniør
14. jan., 23 - 31. mars, 23
Sjekk din kvalifisering for en eksamen rabatt tilbud og registrere deg for gratis live økter for å forberede eksamen DP-700.
Finn ut mer