Leer en inglés

Compartir a través de


VALUES

Se aplica a: Columna calculada Tabla calculada Medida Cálculo visual

Si el parámetro de entrada es un nombre de columna, devuelve una tabla de una columna que contiene los valores distintos de la columna especificada. Los valores duplicados se quitan y solo se devuelven los valores únicos. Se puede agregar un valor BLANK. Si el parámetro de entrada es un nombre de tabla, devuelve las filas de la tabla especificada. Las filas duplicadas se conservan. Se puede agregar una fila BLANK.

Nota

Esta función no se puede usar para devolver valores en una celda o columna de una hoja de cálculo, sino que se usa como una función intermedia, anidada en una fórmula, para obtener una lista de valores distintos que se pueden contar o usar para filtrar o sumar otros valores.

Sintaxis

DAX
VALUES(<TableNameOrColumnName>)  

Parámetros

Término Definición
TableName o ColumnName Columna de la que se van a devolver valores únicos o tabla de la que se van a devolver filas.

Valor devuelto

Si el parámetro de entrada es un nombre de columna, una tabla de una sola columna. Si el parámetro de entrada es un nombre de tabla, se devuelve una tabla de las mismas columnas.

Notas

  • Cuando se usa la función VALUES en un contexto que se ha filtrado, los valores únicos que devuelve VALUES se ven afectados por el filtro. Por ejemplo, si filtra por región y devuelve una lista de los valores de ciudad, la lista solo incluye las ciudades de las regiones permitidas por el filtro. Para devolver todas las ciudades, independientemente de los filtros existentes, debe usar la función ALL para quitar los filtros de la tabla. En el segundo ejemplo se muestra el uso de ALL con VALUES.

  • Esta función no se admite para su uso en el modo DirectQuery cuando se utiliza en columnas calculadas o en reglas de seguridad de nivel de fila (RLS).

  • Para conocer los procedimientos recomendados al usar VALUES, consulte Uso de SELECTEDVALUE en lugar de VALUES.

En la mayoría de los escenarios, si el argumento es un nombre de columna, los resultados de la función VALUES son idénticos a los de la función DISTINCT. Ambas funciones quitan duplicados y devuelven una lista de los valores posibles de la columna especificada. Pero la función VALUES también puede devolver un valor en blanco. Este valor en blanco es útil en aquellos casos en los que se buscan valores distintos de una tabla relacionada, pero falta un valor usado en la relación de una tabla. En la terminología de bases de datos, esto se denomina una infracción de integridad referencial. Tales discrepancias en los datos pueden producirse cuando se actualiza una tabla y la tabla relacionada no.

Si el argumento es un nombre de tabla, el resultado de la función VALUES devuelve todas las filas de la tabla especificada más una fila en blanco, si hay una infracción de integridad referencial. La función DISTINCT quita las filas duplicadas y devuelve las filas únicas de la tabla especificada.

Nota

La función DISTINCT permite que un nombre de columna o cualquier expresión de tabla válida sea su argumento, pero la función VALUES solo acepta un nombre de columna o un nombre de tabla como argumento.

En la tabla siguiente se resume la discrepancia entre los datos que se puede producir en dos tablas relacionadas cuando no se preserva la integridad referencial.

Tabla MyOrders Tabla MySales
1 de junio Ventas del 1 de junio
2 de junio Ventas del 2 de junio
(no se ha especificado ninguna fecha de pedido) Ventas del 3 de junio

Si usa la función DISTINCT para devolver una lista de fechas, solo se devolverán dos fechas. Pero si usa la función VALUES, la función devuelve las dos fechas más un miembro en blanco adicional. Además, cualquier fila de la tabla MySales que no tenga una fecha coincidente en la tabla MyOrders se "empareja" con este miembro desconocido.

Ejemplo

La fórmula siguiente cuenta el número de facturas únicas (pedidos de ventas) y genera los siguientes resultados cuando se usa en un informe que incluye los nombres de categoría de producto:

DAX
= COUNTROWS(VALUES('InternetSales_USD'[SalesOrderNumber]))  

Devuelve

Etiquetas de fila Recuento de facturas
Accesorios 18 208
Bicicletas 15 205
Ropa 7 461
Total general 27 659

FILTER (función)
Función COUNTROWS
Funciones de filtro