Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Hacer referencia a diferentes tablas al crear una medida

Estoy tratando de crear una medida dentro de una tabla llamada 'Todas las ventas'. La Medida debe calcular la relación entre las veces que aparece "1" en la columna [Ventas] de la tabla 'Números de ventas' y el número de registros (es decir, filas) en la tabla 'Todas las ventas'. No quiero copiar la columna Ventas en la tabla Todas las ventas para mantener los archivos de datos pequeños, por lo tanto, use Medir y no agregue una columna. El problema es que cuando se usan las declaraciones Countrows o If, no me permiten hacer referencia a ninguna columna fuera de la tabla 'Todas las ventas'.

La fórmula que pensé (junto con otras versiones de mayo dice así:

Medida = DIVIDIR((COUNTROWS('Ventas'['Números de ventas'], == "1")), COUNTROWS('Todas las ventas'))
Tabla 'Número de ventas'
ID de registroVentas
11
23
35
41

Tabla 'Todas las ventas'

ID de registroVendido
17
24
39
43
58

Por lo tanto, la medida resultante debe = 2/5 = 2.5

Gracias por la ayuda, ya que sé que tiene que haber una manera fácil

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hola

Cree una tabla de una sola columna denominada Registros con solo un ID de registro único en esa tabla. Cree una relación (Mnay a One y Single) desde la columna RecordID de las 2 tablas de datos a la columna RecordID de la nueva tabla. Escribe estas medidas y arrastra la última a un visual de tarjeta

Medida1 = calcular(COUNTROWS('ventas'),'Ventas'['Números de ventas'], == "1")

Measure2 = COUNTROWS('Todas las ventas')

medida3 = dividir([Medida1],[Medida2])

Espero que esto ayude.

Syndicate_Admin
Administrator
Administrator

Lea acerca de CALCULATE()

OK, creo que con las sugerencias anteriores y corrigiendo la sintaxis lo he resuelto.

Como dice Ahsish Mathur, puedes crear dos medidas separadas y luego dividirlas. Esto hace que sea más fácil de seguir. Originalmente quería evitar esto para minimizar el tiempo de procesamiento de 3 medidas al cargar en millones de situaciones de datos de fila y crear más elementos en la sección Campos.

Entonces, combinando esto en una ecuación se lee:

Medida = DIVIDIR(COUNTROWS('Todas las ventas'), CALCULAR(COUNTROWS('Ventas'),'Ventas'[Números de ventas] == "1"))
Así que el punto clave para los demás si estoy en lo correcto:
COUNTROWS solo cuenta las filas de una tabla, no una columna, por lo que solo puede hacer referencia a tablas.
Para encontrar la cantidad de valores específicos en una columna, filtre la tabla usando CALCULATE y luego cuente las filas restantes.
Así que:
CALCULATE(COUNTROWS('Ventas'),'Ventas'[Números de ventas] == "1"
dice así:
Cuente las filas que quedan en la tabla Ventas después del filtro Números de ventas = 1. Donde el término CALCULATE crea el filtro , no COUNTROWS.
Pensamiento interesante sin embargo. ¿Usar el método de 3 medidas sería tan rápido de cargar como el método de 1 medida?

Use DAX Studio para examinar los planes de consulta.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.