#840

Urmărește contoare zilnice indexate după «utilizator + zi»

Analytics scrie un contor zilnic de activitate per utilizator: perechea (utilizator, zi) este unică, iar fiecare eveniment fie creează un rând cu valoarea unu, fie îl incrementează pe cel existent. Aici cheia primară este compusă, așa că clauza de conflict „insert-cu-update” trebuie să facă referire la ambele coloane simultan — aceasta este diferența față de cazul clasic cu cheie primară pe o singură coloană. Tabelul daily_count(user_id, day, n DEFAULT 0, PRIMARY KEY (user_id, day)) este gol. Rulează trei încercări de inserare pe perechea (1, '2024-01-10') și două pe (1, '2024-01-11') — la conflict pe această pereche, n-ul existent crește cu unu. După rulări, perechea (1, '2024-01-10') ar trebui să aibă n = 3, iar (1, '2024-01-11')n = 2.

Doar INSERT/UPDATE/DELETE — nu este nevoie de un SELECT la final.

Rezultatul interogării tale va apărea aici