Função CONTAINSROW
Aplica-se a:Coluna calculadaTabela calculadaMedidaCálculo visual
Retornará TRUE se houver pelo menos uma linha onde todas as colunas tenham valores especificados.
Sintaxe
CONTAINSROW(<Table>, <Value> [, <Value> [, …] ] )
Parâmetros
Termo | Definição |
---|---|
Tabela | Uma tabela a ser testada. |
Valor | Qualquer expressão DAX válida que retorna um valor escalar. |
Retornar valor
TRUE ou FALSE.
Comentários
A sintaxe Except, o operador IN e a função CONTAINSROW são funcionalmente equivalentes.
<scalarExpr> IN <tableExpr> ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
- O número de scalarExprN deve corresponder ao número de colunas em tableExpr.
- NOT IN não é um operador no DAX. Para executar a negação lógica do operador IN, coloque NOT na frente da expressão inteira. Por exemplo, NOT [Color] IN { "Vermelho", "Amarelo", "Azul" }.
Ao contrário do operador =, o operador IN e a função CONTAINSROW executam uma comparação estrita. Por exemplo, o valor BLANK não corresponde a 0.
Exemplos
Os exemplos deste artigo podem ser usados com o modelo de exemplo do Power BI Desktop do Adventure Works DW 2020. Para obter o modelo, confira Modelo de exemplo DAX.
Exemplo 1
As seguintes consultas DAX:
EVALUATE
FILTER (
ALL ( Product[Color] ),
( [Color] )
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
e
EVALUATE
FILTER (
ALL ( Product[Color] ),
CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Retornam a tabela a seguir com uma única coluna:
[Cor] |
---|
Azul |
Vermelho |
Amarelo |
Exemplo 2
As seguintes consultas DAX equivalentes:
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT [Color]
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
e
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Retornam a tabela a seguir com uma única coluna:
[Cor] |
---|
Preto |
Cinza |
Multi |
NA |
Prata |
Prata\Preto |
Branca |