Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowData Days is here! Join us now for 60+ days of learning, challenges, and connection. Learn more
hola
Me gustaría crear una nueva tabla de inicio de sesión/cierre de sesión a partir de una tabla existente.
La nueva tabla encontrará el logout_dt coincidente para un usuario en particular.
Si no hay cierre de sesión antes del siguiente inicio de sesión, logout_dt = siguiente logon_dt.
Tabla existente:
| usuario | logon_dt | logout_dt |
| userA | 2022-11-22 08:10:00 | |
| usuarioB | 2022-11-22 08:20:00 | |
| usuarioC | 2022-11-22 08:30:00 | |
| userA | 2022-11-22 12:10:00 | |
| userA | 2022-11-22 13:00:00 | |
| usuarioB | 2022-11-22 13:20:00 |
Nueva tabla
| usuario | logon_dt | logout_dt | Duración [hh:mm] |
| userA | 2022-11-22 08:10:00 | 2022-11-22 12:10:00 | 04:00 |
| usuarioB | 2022-11-22 08:20:00 | 2022-11-22 13:20:00 | 05:00 |
| usuarioC | 2022-11-22 08:30:00 | ||
| userA | 2022-11-22 13:00:00 | ||
| usuarioB | 2022-11-22 13:20:00 |
gracias
Hola
Por favor, compruebe la imagen de abajo y el archivo pbix adjunto.
New table =
VAR _logoutdatecolumn =
ADDCOLUMNS (
Data,
"@logout_dt",
VAR _nextlogondt =
MINX (
FILTER (
Data,
Data[user] = EARLIER ( Data[user] )
&& Data[logon_dt] > EARLIER ( Data[logon_dt] )
),
Data[logon_dt]
)
VAR _nextlogoutdt =
MINX (
FILTER (
Data,
Data[user] = EARLIER ( Data[user] )
&& OR ( Data[logon_dt] > EARLIER ( Data[logon_dt] ), ISBLANK ( Data[logon_dt] ) )
&& Data[logout_dt] < _nextlogondt
),
Data[logout_dt]
)
RETURN
IF ( _nextlogoutdt <> BLANK (), _nextlogoutdt, _nextlogondt )
)
VAR _durationhrcolumn =
ADDCOLUMNS (
_logoutdatecolumn,
"@durationmin", DATEDIFF ( Data[logon_dt], [@logout_dt], MINUTE )
)
RETURN
FILTER ( _durationhrcolumn, Data[logon_dt] <> BLANK () )
gracias. está funcionando.
Don't miss out on Data Days, June 15 through August 7. Learn Fabric, Power BI, SQL, AI and more.
Check out the May 2026 Power BI update to learn about new features.