Forum Discussion
RANK con PARTITION BY Like SQL
Hola
Estoy buscando usar una fórmula DAX, similar a la función de ventana RANK con partición por dentro de SQL.
Mi resultado deseado es el siguiente:
| IDENTIFICACIÓN | Fecha | Rango |
| 1 | 01-Ene-21 | 1 |
| 1 | 01-Ene-21 | 1 |
| 1 | 02-Ene-21 | 2 |
| 1 | 03-ene-21 | 3 |
| 2 | 01-Ene-21 | 1 |
| 2 | 02-Ene-21 | 2 |
| 3 | 01-Ene-00 | 1 |
| 4 | 01-Ene-00 | 1 |
Este DAX no funciona, recibo todos los valores 1 de la siguiente manera:
| IDENTIFICACIÓN | Fecha | Rango |
| 1 | 01-Ene-21 | 1 |
| 1 | 01-Ene-21 | 1 |
| 1 | 02-Ene-21 | 1 |
| 1 | 03-ene-21 | 1 |
| 2 | 01-Ene-21 | 1 |
| 2 | 02-Ene-21 | 1 |
| 3 | 01-Ene-00 | 1 |
| 4 | 01-Ene-00 | 1 |
La nueva función RANK debería hacer que esto sea más fácil de lo que solía ser.
Pruebe esto:
RANK ( DENSE, ORDERBY ( 'Table'[Date], ASC ), PARTITIONBY ( 'Table'[ID] ) )
8 Replies
- Syndicate_Admin
Administrator
Disculpas, deseo que esto se clasifique por fecha más temprana.
- Syndicate_Admin
Administrator
No entiendo lo siguiente
1 ¿Está buscando una columna para agregar a la tabla o a una medida?
2 El resultado de tu desred es confuso
IDENTIFICACIÓN Fecha Rango 1 01-Ene-21 1 1 01-Ene-21 1 1 02-Ene-21 2 1 03-ene-21 3 2 01-Ene-21 1 2 02-Ene-21 2 3 01-Ene-00 1 4 01-Ene-00 1 ¿Quieres el rango dentro de un año?
Gracias
Si esto ayudó, considere dar felicitaciones y marcar como solución
@me en las respuestas o perderé tu hilo
considere la posibilidad de votar esta idea de Power BI
Francesco Bergamaschi
MBA, M.Eng, M.Econ, Profesor de BI
- Syndicate_Admin
Administrator
Hola amigo,
Una nueva columna, que clasifica las fechas agrupadas por cada identificador.
El valor de la fecha real es irrelevante, solo quiero que el más antiguo sea 1 para cada ID, y el segundo 2, y así sucesivamente.
- Syndicate_Admin
Administrator
- Syndicate_Admin
Administrator
El mismo problema, utilizado exactamente, sigue recibiendo los valores 1.
rn =VAR Fecha actual =SELECTEDVALUE ( Mesa[Fecha] )VAR Tabla de clasificación =CALCULABLE (RESUMIR ( Mesa, Mesa[Fecha] ),TODOS SELECCIONADOS (), -- Filtrar el contexto de la imagenVALORES ( Mesa[Identificación]) -- conservar el filtro de categoría actual)DEVOLUCIÓNRANKX (Tabla de clasificación,Mesa[Fecha],Fecha actual,ASC)
- Syndicate_Admin
Administrator
La nueva función RANK debería hacer que esto sea más fácil de lo que solía ser.
Pruebe esto:
RANK ( DENSE, ORDERBY ( 'Table'[Date], ASC ), PARTITIONBY ( 'Table'[ID] ) )- Syndicate_Admin
Administrator
Gracias amigo, perfecto.