Zdieľať cez


CROSSJOIN

Vzťahuje sa na:vypočítaný stĺpecvypočítanej tabuľkyvizuálového výpočtu

Vráti tabuľku obsahujúcu karteziánsky súčin všetkých riadkov zo všetkých tabuliek v argumentoch. Stĺpce v novej tabuľke sú všetky stĺpce vo všetkých tabuľkách argumentov.

Syntax

CROSSJOIN(<table>, <table>[, <table>]…)

Parametre

Termín Definícia
table Akýkoľvek výraz DAX, ktorý vráti tabuľku údajov

Vrátená hodnota

Tabuľka obsahujúca karteziánsky súčin všetkých riadkov zo všetkých tabuliek v argumentoch.

Poznámky

  • Názvy stĺpcov z table argumentov sa musia líšiť vo všetkých tabuľkách, inak sa vráti chyba.

  • celkový počet riadkov vrátených CROSSJOIN() sa rovná súčinu počtu riadkov zo všetkých tabuliek v argumentoch; Celkový počet stĺpcov vo výslednej tabuľke je tiež súčtom počtu stĺpcov vo všetkých tabuľkách. Ak napríklad TableArA riadky a stĺpce cA a TabuľkaBrB riadky a stĺpce cB a TableCrC riadkov a stĺpcov cC; výsledná tabuľka má rA × + cB + cC × rC riadky a stĺpce cA + cB + cC.

  • Táto funkcia nie je podporovaná na použitie v režime DirectQuery, keď sa používa vo vypočítaných stĺpcoch alebo v pravidlách zabezpečenia na úrovni riadkov (RLS).

Príklad

Nasledujúci príklad znázorňuje výsledky použitia CROSSJOIN() na dve tabuľky: farby a súprava šablón.

Tabuľka farby obsahuje farby a vzory:

Farba Vzorka
Červený Vodorovný pruh
Zelený Zvislý prúžok
Modrý Krížové sliedka

Tabuľka stationery obsahuje písma a prezentáciu:

Písmo Prezentácia
Serif Reliéfny
sans-serif ryté

Výraz, ktorý má vygenerovať krížové spojenie, je uvedený nižšie:

CROSSJOIN( Colors, Stationery)

Ak by sa výraz uvedený vyššie použil tam, kde sa očakáva výraz tabuľky, výsledky výrazu by boli nasledovné:

Farba Vzorka Písmo Prezentácia
Červený Vodorovný pruh Serif Reliéfny
Zelený Zvislý prúžok Serif Reliéfny
Modrý Krížové sliedka Serif Reliéfny
Červený Vodorovný pruh sans-serif ryté
Zelený Zvislý prúžok sans-serif ryté
Modrý Krížové sliedka sans-serif ryté