CROSSJOIN
platí pro:Počítaný sloupec
Počítaná tabulka
míra
vizuální
Vrátí tabulku, která obsahuje kartézský součin všech řádků ze všech tabulek v argumentech. Sloupce v nové tabulce jsou všechny sloupce ve všech tabulkách argumentů.
Syntax
CROSSJOIN(<table>, <table>[, <table>]…)
Parametry
Semestr | Definice |
---|---|
table |
Libovolný výraz DAX, který vrací tabulku dat |
Návratová hodnota
Tabulka, která obsahuje kartézský součin všech řádků ze všech tabulek v argumentech.
Poznámky
Názvy sloupců z argumentů
table
musí být ve všech tabulkách odlišné nebo se vrátí chyba.Celkový počet řádků vrácených CROSSJOIN() se rovná součinu počtu řádků ze všech tabulek v argumentech; Celkový počet sloupců ve výsledné tabulce je také součet počtu sloupců ve všech tabulkách. Pokud
TableA má například řádky rA asloupce cA atabulkaB rB řádky asloupce cB aTableC má rC řádky acC sloupec; výsledná tabulka pak obsahujerA × × rC řádky acA + cB + cC sloupce.Tato funkce není podporována pro použití v režimu DirectQuery při použití v počítaných sloupcích nebo pravidlech zabezpečení na úrovni řádků (RLS).
Příklad
Následující příklad ukazuje výsledky použití CROSSJOIN() na dvě tabulky: Barvy a šablony.
Tabulka Barvy obsahuje barvy a vzory:
Barva | Vzor |
---|---|
Červený | Vodorovný pruh |
Zelený | Svislý pruh |
Modrý | Vyšrafovat |
Tabulka šablony obsahuje písma a prezentaci:
Písmo | Prezentace |
---|---|
serif | vypouklý |
sans-serif | vrytý |
Výraz pro vygenerování křížového spojení je uveden níže:
CROSSJOIN( Colors, Stationery)
Pokud se výše uvedený výraz použije všude, kde se očekává výraz tabulky, výsledky výrazu budou následující:
Barva | Vzor | Písmo | Prezentace |
---|---|---|---|
Červený | Vodorovný pruh | serif | vypouklý |
Zelený | Svislý pruh | serif | vypouklý |
Modrý | Vyšrafovat | serif | vypouklý |
Červený | Vodorovný pruh | sans-serif | vrytý |
Zelený | Svislý pruh | sans-serif | vrytý |
Modrý | Vyšrafovat | sans-serif | vrytý |