Función CONTAINSROW
Se aplica a:Columna calculadaTabla calculadaMedidaCálculo visual
Devuelve TRUE si hay al menos una fila con valores especificados en todas las columnas.
Sintaxis
CONTAINSROW(<Table>, <Value> [, <Value> [, …] ] )
Parámetros
Término | Definición |
---|---|
Tabla | Una tabla que se va a probar. |
Value | Cualquier expresión DAX válida que devuelve un valor escalar. |
Valor devuelto
TRUE o FALSE.
Comentarios
Excepto en la sintaxis, el operador IN y la función CONTAINSROW son funcionalmente equivalentes.
<scalarExpr> IN <tableExpr> ( <scalarExpr1>, <scalarExpr2>, … ) IN <tableExpr>
- El número de valores scalarExprN debe coincidir con el número de columnas de tableExpr.
- NOT IN no es un operador en DAX. Para realizar la negación lógica del operador IN, ponga NOT delante de la expresión completa. Por ejemplo, NOT [Color] IN {"Rojo", "Amarillo", "Azul"}.
A diferencia del operador =, el operador IN y la función CONTAINSROW realizan una comparación estricta. Por ejemplo, el valor BLANK no coincide con 0.
Ejemplos
Los ejemplos de este artículo se pueden usar con el modelo de ejemplo de Power BI Desktop de Adventure Works DW 2020. Para obtener el modelo, vea Modelo de ejemplo de DAX.
Ejemplo 1
Las consultas DAX siguientes:
EVALUATE
FILTER (
ALL ( Product[Color] ),
( [Color] )
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
y
EVALUATE
FILTER (
ALL ( Product[Color] ),
CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Devuelva la siguiente tabla con una sola columna:
[Color] |
---|
Azul |
Rojo |
Amarillo |
Ejemplo 2
Las siguientes consultas DAX equivalentes:
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT [Color]
IN {
"Red",
"Yellow",
"Blue"
}
)
ORDER BY [Color]
y
EVALUATE
FILTER (
ALL ( Product[Color] ),
NOT CONTAINSROW (
{
"Red",
"Yellow",
"Blue"
},
[Color]
)
)
ORDER BY [Color]
Devuelva la siguiente tabla con una sola columna:
[Color] |
---|
Negro |
Gris |
Multi |
NA |
Plata |
Plata\Negro |
Blanco |