Heim >Datenbank >MySQL-Tutorial >Wie kann man eindeutige Site-Anmeldungen in MySQL innerhalb des letzten Tages genau zählen?

Wie kann man eindeutige Site-Anmeldungen in MySQL innerhalb des letzten Tages genau zählen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-30 07:27:10529Durchsuche

How to Accurately Count Unique Site Logins in MySQL within the Last Day?

Zählen eindeutiger Site-Anmeldungen in MySQL

Das Ziel besteht darin, die Anzahl der eindeutigen Besuche auf einer bestimmten Website innerhalb des letzten Tages zu ermitteln in den Spalten user_id und site_id in der Tabelle cp_visits. Allerdings scheint die erste Abfrage doppelte Ergebnisse für Website-Besuche zu liefern. Sehen wir uns an, wie dieses Problem behoben werden kann.

Die bereitgestellte Abfrage versucht, einzelne Besuche zu zählen, enthält jedoch keine GROUP BY-Klausel, die für die Eliminierung von Duplikaten von entscheidender Bedeutung ist. Infolgedessen gibt die Abfrage mehrere Zeilen für jede Site_ID zurück, da die Ergebnisse nicht aggregiert werden.

Um unterschiedliche Site-Anmeldungen korrekt zu zählen, müssen wir die Ergebnisse nach Site_ID gruppieren und dann die unterschiedlichen Benutzer-IDs innerhalb jeder Site zählen Gruppe. Dies wird durch die folgende modifizierte Abfrage erreicht:

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`

In dieser überarbeiteten Abfrage:

  • COUNT(DISTINCT user_id) berechnet die Anzahl der eindeutigen Benutzer, die jede Website besucht haben.
  • COUNT(site_id) zählt die Gesamtzahl der Besuche auf jeder Site.
  • GROUP BY site_id` aggregiert die Ergebnisse nach site_id` und stellt so sicher, dass wir eindeutige Besuche für jede Site zählen.

Durch die Anwendung dieser Änderungen sollten Sie jetzt genaue Zählungen eindeutiger Site-Anmeldungen für den vergangenen Tag aus Ihren cp_visits erhalten Tabelle.

Das obige ist der detaillierte Inhalt vonWie kann man eindeutige Site-Anmeldungen in MySQL innerhalb des letzten Tages genau zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn