Déterminer le nombre de connexions distinctes dans MySQL
Dans le domaine de la gestion de bases de données, il est souvent nécessaire de discerner les occurrences uniques de données dans un domaine donné. laps de temps. Pour répondre à ce besoin dans MySQL, la fonction COUNT DISTINCT s'avère inestimable, nous permettant de déterminer le nombre de valeurs distinctes dans un ensemble de données spécifié.
Un scénario récent présentait le défi de compter les visites distinctes sur un site particulier dans le dernières 24 heures. La requête initialement utilisée, bien que paraissant valable, a donné des résultats erronés avec des identifiants de site en double. Cet écart posait la question : comment isoler et compter uniquement les connexions distinctes au site ?
La solution, il s'est avéré, résidait dans l'application de la fonction COUNT DISTINCT en conjonction avec une clause GROUP BY. En isolant le champ site_id, nous nous sommes assurés que seules les valeurs uniques étaient prises en compte dans le calcul. La requête révisée se lit comme suit :
SELECT COUNT(DISTINCT user_id) AS countUsers, COUNT(site_id) AS countVisits, site_id AS site FROM cp_visits WHERE ts >= DATE_SUB(NOW(), INTERVAL 1 DAY) GROUP BY site_id
Avec cette approche modifiée, la requête rapporte désormais avec précision les différentes connexions au site et leur nombre de visites respectives, fournissant les informations souhaitées sur l'activité des utilisateurs sur le site en question.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!