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.
Hola
¿Cómo escribiría una consulta DAX sonrímil basada en la siguiente consulta T-SQL:
Seleccione
a.CustomerName
,SUM(a.AvailableFlag) AS AvailableDays
De
(
SELECCIONAR DISTINTO
Ce. CalendarKey
Ce. AvailableFlag
,c.CustomerName
De
PersonCalendar ec
INNER JOIN
Visitas v
En
Ce. Db á v.Db
y ec. PersonId á v.PersonId
y ec. PersonDay á Convert(Date,v.ArriveDttm)
INNER JOIN
Llamadas c
ON v.Db á c.Db
y v.CallNo á c.CallNo
Dónde
Año(v.ArriveDttm) en (2019,2020)
Y ec. Db á 'Reino Unido'
) a
Agrupar por a.CustomerName
orden por 1
Gracias
Hola @AvPowerBI ,
Lo he intentado, pero no estoy seguro:
table =
VAR tab =
CALCULATETABLE (
VALUES ( ec[calendarkey] ),
VALUES ( ec[availableflag] ),
VALUES ( c[customername] ),
FILTER (
CROSSJOIN ( ec, b ),
ec[db] = v[db]
&& ec[personid] = v[personid]
&& ec[personday] = FORMAT ( v[arrivedttm], "General Date" )
),
FILTER ( CROSSJOIN ( v, c ), v[db] = c[db] && v[callno] = c[callno] ),
OR ( YEAR ( v[arrivedttm] ) = 2019, YEAR ( v[arrivedttm] ) = 2020 )
&& ec[db] = 'UK'
)
RETURN
SUMMARIZE (
tab,
'c'[customername],
"AvailableDays", SUM ( 'ec'[availableflag] )
)
Consulte los siguientes artículos:
Best Looks,
Yingjie Li
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola V-yingl,
Gracias por su ayuda hasta ahora, he intentado la forma que ha mencionado, pero estaba teniendo problemas que lo implentan y no se dio cuenta de que sería tan complejo la consulta DAx para obtener el resultado que quería.
Por lo tanto, he proporcionado un ejemplo y añadí la hoja de cálculo y el archivo pbix en One Drive, verá los resultados de lo que quiero desde el enlace oneshare a continuación
https://1drv.ms/u/s!Aknl2UdxdHn0cTzGDcZPqkEDXcI?e=KXvDVU
Desea tener los siguientes resultados, cuando la dimensión es CustomerName pero sigue repitiendo el mismo valor de 6
Gracias
Desea tener los siguientes resultados, cuando la dimensión es CustomerNamepero sigue repitiendo el mismo valor de 6
Los valores repetidos como este son generalmente indicativos de un problema de relación.
Aquí la tabla Visitas no puede filtrar PersonCalendar debido a la dirección de la relación.
Soluciones : cambiar la dirección a 'bidireccional' entre Visitas y PersonCalendar . Funcionará, pero puede causar problemas de relación para otros resultados
O
reelaborar el modelo de datos. Esto dependería de lo que usted está tratando de informar sobre
O
utilizar CROSSFILTER para filtrar el PersonCalendar por sólo esta medida, por ejemplo.
FiltAvailDays ? CALCULATE([AvailableDays], CROSSFILTER(PersonCalendar[PersonIdDateKey], Visits[PersonIdDateKey], Both))
Gracias HotChilli,
Voy a echar un vistazo a estas funciones DAX que ha mentoned, sólo quería comprobar que fue capaz de acceder a la carpeta OneDrive que mencioné en el post anterior?
Actualmente estoy en una transición de QlikView a Power BI, donde Qlikview tenía una función llamada Cíclica que se podía recorrer a través de diferentes dimensiones y automáticamente resolvería el valor para usted, sin tener la misma suerte en Power BI me temo.
Hay @AvPowerBI ,
Basado en su archivo de ejemplo, he creado una medida pero obtengo los diferentes valores como este después de cambiar la dirección del filtro cruzado de único a ambos
Measure =
VAR tab =
ADDCOLUMNS (
RELATEDTABLE ( Visits ),
"flag", RELATED ( PersonCalendar[AvailableDayFlag] )
)
RETURN
COUNTROWS ( FILTER ( tab, [flag] = 1 ) )
Después de comparar las visitas a la mesa, parece haber una falta de cierta lógica para juzgar la duplicación en la tabla.
Saludos
Yingjie Li
Si esta publicación ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@AvPowerBI , consulte si esto puede ayudar a
https://www.sqlbi.com/articles/from-sql-to-dax-joining-tables/
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |