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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

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
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

Power BI Carousel June 2024

Power BI Monthly Update - June 2024

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

PBI_Carousel_NL_June

Fabric Community Update - June 2024

Get the latest Fabric updates from Build 2024, key Skills Challenge voucher deadlines, top blogs, forum posts, and product ideas.

Top Solution Authors
Top Kudoed Authors