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 a todos
He creado una columna calculada con el siguiente código dax
Val anterior ?
var _date - MyTable[Fecha]
var _label - MyTable[etiqueta]
var _IssueDateTime á MyTable[IssueDateTime]
devolución
MAXX(
FILTER(MyTable,
MyTable[etiqueta] á _label && MyTable[Fecha] - _date && MyTable[IssueDateTime] < _IssueDateTime),MyTable[ShipDateTime])
)
Mi pregunta: ¿Importa la secuencia de columnas con la velocidad de la consulta?
Por ejemplo, la consulta anterior vuelve en 40 segundos, pero si se pone en primer lugar MyTable[Date] _date y, a continuación, MyTable[label] _label vuelve en 1 minuto y 10 segundos.
Además, si omito MyTable[Date] - _date nunca vuelve!! Error : No hay suficiente memoria
¿Hay alguna recomendación para la secuencia de columnas (por ejemplo, filtre primero las columnas que reducirán el conjunto de datos final más ...)
Hola @yios ,
El uso de la función EARLIER() como amitchandak mencionado es acutalmente una manera de optimizar la columna calculada en este caso. Básicamente le sugerimos que cree una medida en lugar de una columna calculada para ahorrar memoria porque si la cantidad de cálculo es grande, ocupará más memoria, lo que resulta en memoria insuficiente y producir un error como el mencionado.
Puede consultar este blog sobre la medida y la columna calculada:
Calculated-columns-and-measures-in-dax
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.
He intentado su propuesta de usar la medida en lugar de las columnas calculadas, pero se necesita mucho tiempo el objeto visual para ser mostrado debido a cálculos complejos que se deben ejecutar sobre la marcha de una reacción del usuario.
¿Hay alguna documentación que diga que la función anterior es más rápida que el uso de variables ??
Te lo pregunto porque se ejecuta exactamente al mismo tiempo, sin mejor rendimiento.
Is there any documentation that says that earlier function is faster than using variables ??
I am asking because it runs in exactly the same time, no better performance.
@yios , Trate así si funciona mejor
MAXX(
FILTER(MyTable,
MyTable[label] á earlier(MyTable[label]) && MyTable[Date] á earlier(MyTable[Date]) && MyTable[IssueDateTime] < earlier(MyTable[IssueDateTime])),MyTable[ShipDateTime])
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 |