#840

Spåra dagliga räknare med nyckeln «användare + dag»

Analysteamet skriver en daglig aktivitetsräknare per användare: paret (användare, dag) är unikt, och varje händelse skapar antingen en rad med en etta eller ökar den befintliga. Här är primärnyckeln sammansatt, så konfliktsatsen för «infoga-med-uppdatering» måste referera till båda kolumnerna samtidigt — det är skillnaden från det klassiska fallet med en primärnyckel på en kolumn. Tabellen daily_count(user_id, day, n DEFAULT 0, PRIMARY KEY (user_id, day)) är tom. Kör tre infogningsförsök på paret (1, '2024-01-10') och två på (1, '2024-01-11') — vid konflikt på detta par ökar det befintliga n med ett. Efter körningarna ska paret (1, '2024-01-10') ha n = 3 och (1, '2024-01-11') ha n = 2.

Endast INSERT/UPDATE/DELETE — ingen avslutande SELECT behövs.

Ditt frågeresultat visas här