Junior
Proporção de tráfego de bots A equipa de antifraude desenvolveu um mecanismo para detectar tráfego de bots no site da loja: quando um bot entra no site, a substring "bot" (sem distinção de maiúsculas ou minúsculas) é adicionada aos parâmetros da sua URL. Se o user_id foi identificado como bot pelo menos uma vez em dezembro, deve sempre ser considerado como bot. Estude o conjunto de dados com as visitas dos utilizadores ao site e calcule a proporção de bots em relação ao total de utilizadores em dezembro de 2024 (arredonde para uma casa decimal). Formato de entrada Tabela visits: - event_date (date) — data da visita - user_id (int) — identificador único do utilizador - url (string) — link pelo qual a visita foi efetuada Os dados não contêm valores ausentes ou incorretos. Formato de saída A consulta deve retornar uma tabela com os campos: - share (float) — proporção de bots em relação ao total de utilizadores em dezembro, arredondada a uma casa decimal.
sobes.tech IA
Resposta da IA
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 (без учета регистра), затем всех пользователей в декабре. После этого вычисляет долю ботов от общего числа пользователей и округляет до одного знака после запятой.