Don't miss your chance to take the Fabric Data Engineer (DP-700) exam on us!
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Hola
Necesito ayuda sobre la mejor manera de lidiar con un problema de valores únicos a lo largo del tiempo.
Estoy trabajando con datos de estudiantes (nivel universitario). Hacemos un seguimiento de las inscripciones aplicando filtros por programas, unidades (agrupaciones de programas) y facultad/departamento. Se trata de un tipo de jerarquía en la que los programas están en unidades y las unidades en departamentos. "Tenía" estas 3 tablas con valores únicos conectados entre sí hasta que me di cuenta de que para obtener valores únicos en los programas tenía que aplicar un filtro solo en los programas activos, deshaciéndome así de todos los datos pasados.
El problema es que los programas pueden haber cambiado de unidad a lo largo del tiempo, creando múltiples entradas en las tablas de programas y duplicados. He vuelto a crear las tablas, pero no puedo conectarlas (por ejemplo, programas a unidades) debido a duplicados.
Mis soluciones:
¿Cuál sería tu opinión al respecto?
Gracias
Hola @jsbourni ,
Con el fin de tratar con los datos de los estudiantes que tienen múltiples cambios en las unidades para un programa determinado, una de las soluciones es mantener el registro de cambios de las unidades a las que pertenece un programa a lo largo del tiempo, como se muestra a continuación.
| Programa | Unidades | Fecha | Fin |
| A | AA | 1/1/2024 | 12/31/2024 |
| A | APAGADO | 1/1/2025 | 12/31/2025 |
| B | BB | 1/1/2024 | 12/31/2024 |
| C | BA | 1/1/2025 | 12/31/2025 |
Para realizar este análisis, debe crear una tabla de calendario y tenerla como una tabla desconectada en su modelo de datos.
Units over time =
CONCATENATEX (
DISTINCT ( 'Change log' ),
IF (
'Change log'[Start] <= MAX ( 'Calendar'[Date] )
&& 'Change log'[End] >= MAX ( 'Calendar'[Date] ),
'Change log'[Units],
BLANK ()
)
)
Su desafío descrito suena similar a otros escenarios comerciales comunes en los que los empleados cambian de departamento a lo largo del tiempo en la tabla de empleados y los representantes de ventas son responsables de un cambio de cliente a lo largo del tiempo en la tabla de clientes y, en esos casos, podemos usar la tabla de registro de cambios como la anterior e incorporar la dimensión de tiempo en el análisis.
Lo importante a tener en cuenta es que este análisis de duración de la dimensión de tiempo solo funciona cuando la tabla de calendario se establece como una tabla desconectada en el modelo de datos.
Es posible que pueda proporcionar más detalles si puedo comprender mejor sus requisitos específicos.
Saludos
Hola @DataNinja777,
Gracias por su rápida respuesta. De hecho, omito casi voluntariamente la opción de una tabla relacionada con el tiempo debido a un problema más general de registros en nuestro sistema "antiguo" (está migrando a una estructura más nueva que facilitaría las cosas). Pero tienes toda la razón. ¿Cómo conectarías dicha tabla? Cada aparición de programa en, por ejemplo, la tabla de registro tendría que pasar a través de esa tabla no relacionada para evaluar el período y elegir la combinación correcta, y podría conectar unidades a una tabla única.
Gracias de nuevo
JS
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.