Junior
Proporția traficului de boturi Echipa antifraudă a dezvoltat un mecanism pentru detectarea traficului de boturi pe site-ul magazinului: atunci când un bot accesează site-ul, se adaugă subșirul "bot" (fără a ține cont de majuscule/minuscule) la parametrii URL-ului său. Dacă user_id a fost identificat ca bot cel puțin o dată în decembrie, trebuie considerat întotdeauna ca bot. Studiați setul de date cu vizitele utilizatorilor pe site și calculați proporția de boturi din numărul total de utilizatori în decembrie 2024 (rotunjind la o zecimală). Formatul de intrare Tabelul visits: - event_date (date) — data vizitei - user_id (int) — identificator unic al utilizatorului - url (string) — link-ul prin care s-a făcut vizita Datele nu conțin valori lipsă sau incorecte. Formatul de ieșire Interogarea trebuie să returneze un tabel cu câmpurile: - share (float) — proporția de boturi din numărul total de utilizatori în decembrie, rotunjită la o zecimală.
sobes.tech AI
Răspuns de la AI
sql WITH bot_users AS ( SELECT DISTINCT user_id FROM visits WHERE LOWER(url) LIKE '%bot%' AND event_date BETWEEN '2024-12-01' AND '2024-12-31' ), all_users AS ( SELECT DISTINCT user_id FROM visits WHERE event_date BETWEEN '2024-12-01' AND '2024-12-31' ) SELECT ROUND(COUNT(DISTINCT b.user_id) * 100.0 / COUNT(DISTINCT a.user_id), 1) AS share FROM all_users a LEFT JOIN bot_users b ON a.user_id = b.user_id;
Этот запрос сначала находит всех пользователей, у которых в декабре 2024 был хотя бы один визит с "bot" в URL (без учета регистра), затем всех пользователей в декабре. После этого вычисляет долю ботов от общего числа пользователей и округляет до одного знака после запятой.