Skip to content

user_tracks

History of accesses granted to a user through a track. Each row = one access event (purchase, import, manual assignment, …).

  • ETL strategy: merge
  • PK: id

Columns

ColumnTypeDescription
idBIGINTPK.
id_tenantBIGINTFK → tenants.id.
id_originBIGINTResolved tracks.id_origin.
id_trackBIGINTFK → tracks.id.
id_userBIGINTFK → users.id.
created_atTIMESTAMPTZWhen access was granted.
deleted_atTIMESTAMPTZWhen access was revoked.

The same (id_user, id_track) pair can appear multiple times — grants and revocations over time. For the current access state, prefer metrics.track_access_aggregates, which already consolidates active user_ids.

Patterns

sql
-- Active accesses for user X
SELECT t.title, ut.created_at
FROM lms.user_tracks ut
JOIN lms.tracks t ON t.id = ut.id_track AND t.id_tenant = ut.id_tenant
WHERE ut.id_user = 12345
  AND ut.deleted_at IS NULL
  AND t.deleted_at IS NULL
ORDER BY ut.created_at DESC;

OpenDB · Cademi LMS Data Warehouse