CROSSJOINCROSSJOIN

Retourne une table contenant le produit cartésien de toutes les lignes de toutes les tables figurant dans les arguments.Returns a table that contains the Cartesian product of all rows from all tables in the arguments. Les colonnes de la nouvelle table correspondent à toutes les colonnes de toutes les tables des arguments.The columns in the new table are all the columns in all the argument tables.

SyntaxeSyntax

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

ParamètresParameters

TermeTerm DéfinitionDefinition
tableautable Toute expression DAX qui retourne une table de donnéesAny DAX expression that returns a table of data

Valeur de retourReturn value

Table contenant le produit cartésien de toutes les lignes de toutes les tables figurant dans les arguments.A table that contains the Cartesian product of all rows from all tables in the arguments.

RemarquesRemarks

  • Les noms de colonnes des arguments table doivent tous être différents dans toutes les tables, sans quoi une erreur est retournée.Column names from table arguments must all be different in all tables or an error is returned.

  • Le nombre total de lignes retournées par CROSSJOIN() est égal au produit du nombre de lignes de toutes les tables figurant dans les arguments. De plus, le nombre total de colonnes dans la table de résultats est la somme du nombre de colonnes dans toutes les tables.The total number of rows returned by CROSSJOIN() is equal to the product of the number of rows from all tables in the arguments; also, the total number of columns in the result table is the sum of the number of columns in all tables. Par exemple, si TableA a rA lignes et cA colonnes, si TableB a rB lignes et cB colonnes, et si TableC a rC lignes et cC colonnes, la table obtenue a rA × rB × rC lignes et cA + cB + cC colonnes.For example, if TableA has rA rows and cA columns, and TableB has rB rows and cB columns, and TableC has rC rows and cC column; then, the resulting table has rA × rb × rC rows and cA + cB + cC columns.

ExampleExample

L’exemple suivant montre les résultats de l’application de CROSSJOIN() à deux tables : Colors et Stationery.The following example shows the results of applying CROSSJOIN() to two tables: Colors and Stationery.

La table Colors contient des couleurs (Color) et des modèles (Pattern) :The table Colors contains colors and patterns:

CouleurColor PatternPattern
RedRed Horizontal StripeHorizontal Stripe
GreenGreen Vertical StripeVertical Stripe
BlueBlue CrosshatchCrosshatch

La table Stationery contient les polices et la présentation :The table Stationery contains fonts and presentation:

PoliceFont PresentationPresentation
serifserif embossedembossed
sans-serifsans-serif engravedengraved

L’expression permettant de générer la jointure croisée est présentée ci-dessous :The expression to generate the cross join is presented below:

CROSSJOIN( Colors, Stationery)  

Lorsque l’expression ci-dessus est utilisée chaque fois qu’une expression de table est attendue, les résultats de l’expression sont les suivants :When the above expression is used wherever a table expression is expected, the results of the expression would be as follows:

CouleurColor PatternPattern PoliceFont PresentationPresentation
RedRed Horizontal StripeHorizontal Stripe serifserif embossedembossed
GreenGreen Vertical StripeVertical Stripe serifserif embossedembossed
BlueBlue CrosshatchCrosshatch serifserif embossedembossed
RedRed Horizontal StripeHorizontal Stripe sans-serifsans-serif engravedengraved
GreenGreen Vertical StripeVertical Stripe sans-serifsans-serif engravedengraved
BlueBlue CrosshatchCrosshatch sans-serifsans-serif engravedengraved