CONTAINSROW
platí pro:Počítaný sloupecPočítaná tabulkamíravizuální
Vrátí TRUE
, pokud existuje aspoň jeden řádek, ve kterém mají všechny sloupce zadané hodnoty.
Syntax
CONTAINSROW(<Table>, <Value> [, <Value> [, …] ] )
Parametry
Semestr | Definice |
---|---|
Table |
Tabulka, která se má testovat. |
Value |
Libovolný platný výraz DAX, který vrátí skalární hodnotu. |
Návratová hodnota
TRUE
nebo FALSE
.
Poznámky
Kromě syntaxe jsou operátor
IN
a funkce CONTAINSROW funkčně ekvivalentní.<scalarExpr> IN <tableExpr> ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
- Počet skalarExprN musí odpovídat počtu sloupců v tableExpr.
- NOT IN není operátorem v DAX. Pokud chcete provést logickou negaci operátoru IN, umístěte NOT před celý výraz. Například NOT [Barva] IN { "Červená", "Žlutá", "Modrá" }.
Na rozdíl od operátoru = provádí operátor IN a funkce CONTAINSROW přísné porovnání. Například hodnota BLANK neodpovídá 0.
Příklady
Příklady v tomto článku můžete použít s ukázkovým modelem Adventure Works DW 2020 Power BI Desktopu. Pokud chcete model získat, podívejte se na DAX ukázkový model.
Příklad 1
Následující dotazy DAX:
EVALUATE
FILTER (
ALL ( Product[Color] ),
( [Color] )
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
a
EVALUATE
FILTER (
ALL ( Product[Color] ),
CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Vrátí následující tabulku s jedním sloupcem:
[Barva] |
---|
Modrý |
Červený |
Žlutý |
Příklad 2
Následující ekvivalentní dotazy DAX:
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT [Color]
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
a
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Vrátí následující tabulku s jedním sloupcem:
[Barva] |
---|
Černý |
Šedý |
Multi |
SODÍK |
Stříbro |
Silver\Black |
Bílý |