Detaillierte Erläuterung von MySQL zum Abrufen statistischer Daten für jeden Tag und jede Stunde eines bestimmten Zeitraums

Detaillierte Erläuterung von MySQL zum Abrufen statistischer Daten für jeden Tag und jede Stunde eines bestimmten Zeitraums

Erhalten Sie tägliche Statistiken

Wenn Sie ein Projekt durchführen, müssen Sie das Projektprotokoll analysieren. Eine der Anforderungen besteht darin, die Protokolldaten jedes Tages in einem bestimmten Zeitraum abzurufen. Beispielsweise müssen Sie die Protokolldaten jedes Tages vom 02.02.2018 09:18:36 bis zum 05.03.2018 23:18:36 abrufen. Wenn Sie diese Anforderung sehen, ziehen Sie im Allgemeinen in Betracht, Funktionen zur Lösung zu verwenden und direkt SQL-Anweisungen zu verwenden.

WÄHLEN
	DATE_FORMAT(Triggerzeit, '%Y-%m-%d') Triggertag,
	COUNT(id) Triggeranzahl
AUS
	`job_qrtz_trigger_log`
WO
	Triggerzeit ZWISCHEN '2018-02-02 09:18:36'
UND '2018-03-05 23:18:36'
GROUP BY TriggerDay (Gruppieren nach Triggertag)
ORDER BY Triggerzeit;

Abfrageergebnisse:

Eine kurze Erklärung des obigen SQL

Fragen Sie zuerst das Feld ab. Dabei ist COUNT(id) triggerCount die Anzahl der statistischen Daten, die wir benötigen. Sie können erforderliche Felder je nach tatsächlichem Bedarf hinzufügen.

DATE_FORMAT(Triggerzeit, '%Y-%m-%d') Triggertag

Dies ist ein Datum im Format JJJJ-mm-tt. Das Format hier wird für die nachfolgende Gruppierung verwendet, sodass Sie das Format an unterschiedliche Anforderungen anpassen können.

Meine Anforderung besteht darin, die Protokolldaten für jeden Tag abzurufen. Daher gruppiere ich sie im Format Jahr-Monat-Datum und rufe sie über count(*) ab.

Wenn Sie die Datenmenge für jeden Monat in einem bestimmten Monat abrufen möchten, ändern Sie das Format in

DATE_FORMAT(Auslösezeit, '%Y-%m')

Natürlich muss die Where-Bedingung dem Format entsprechen. Sie können die Where-Bedingung nicht auf das Datum beschränken und nach Monat gruppieren.

Das Datumsausgabeformat von MySQL ist unten aufgeführt:

%a abgekürzter Wochentag
%b abgekürzter Monatsname
%c Monat, numerischer Wert
%D Tag des Monats mit englischem Präfix
%d Tag im Monat, numerischer Wert (00-31)
%e Tag des Monats, numerischer Wert (0-31)
%f Mikrosekunden
%H Stunden (00-23)
%h Stunde (01-12)
%I Stunde (01-12)
%i Minute, Wert (00-59)
%j Tag des Jahres (001-366)
%k Stunde (0-23)
%l Stunden (1-12)
%M Monatsname
%m Monat, numerischer Wert (00-12)
%p AM oder PM
%r Zeit, 12 Stunden (hh:mm:ss AM oder PM)
%S Sekunden (00-59)
%s Sekunden (00-59)
%T Zeit, 24 Stunden (hh:mm:ss)
%U Woche (00-53) Sonntag ist der erste Tag der Woche
%u Woche (00-53) Montag ist der erste Tag der Woche
%V Woche (01-53) Sonntag ist der erste Tag der Woche, verwendet mit %X
%v Woche (01-53) Montag ist der erste Tag der Woche, verwendet mit %x
%W Wochentag
%w Wochentag (0=Sonntag, 6=Samstag)
%X Jahr, wobei Sonntag der erste Tag der Woche ist, 4 Ziffern, verwendet mit %V
%x Jahr, wobei Montag der erste Tag der Woche ist, 4 Ziffern, verwendet mit %v
%Y Jahr, 4 Ziffern
%y Jahr, 2 Ziffern

Erhalten Sie Statistiken für jede Stunde eines Tages

Verwenden Sie die mit MySQL gelieferte HOUR-Funktion zur Verarbeitung

SELECT HOUR(trigger_time) als Stunde, count(*) als Anzahl 
  VON xxl_job_qrtz_trigger_log 
  WO
	Triggerzeit ZWISCHEN '2018-02-05 01:18:36'
UND '2018-02-05 17:18:36'
  GROUP BY HOUR(Triggerzeit) ORDER BY Hour(Triggerzeit);

Die Abfrageergebnisse lauten wie folgt

Oben finden Sie eine ausführliche Erklärung und Integration von MySQL zum Abrufen statistischer Daten für jeden Tag und jede Stunde in einem bestimmten Zeitraum, die vom Herausgeber vorgestellt wurde. Ich hoffe, dass es für alle hilfreich sein wird. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • MySQL-Anweisung zum Abrufen aller Daten oder Monate in einem angegebenen Zeitraum (ohne Festlegen gespeicherter Prozeduren oder Hinzufügen von Tabellen)
  • So verwenden Sie die MySQL DATEDIFF-Funktion, um das Zeitintervall zwischen zwei Daten zu ermitteln
  • Mysql-Timeline-Daten, um die ersten drei Daten desselben Tages zu erhalten
  • MySQL-Beispiel zum Abrufen des heutigen und gestrigen Zeitstempels 0:00
  • mysql erhält das gestrige Datum, das heutige Datum, das morgige Datum und die Uhrzeit der vorherigen und der nächsten Stunde
  • mysql erhält statistische Daten innerhalb eines bestimmten Zeitraums
  • So ermitteln Sie die Zeit in MySQL

<<:  Erstellen Sie eine virtuelle Maschine und installieren Sie das Betriebssystem Redhat Linux auf VMware (grafisches Tutorial)

>>:  Vue+Rem benutzerdefinierter Karusselleffekt

Artikel empfehlen

Über React Native, das keine Verbindung zum Simulator herstellen kann

React Native kann native iOS- und Android-Apps ba...

Fallstudie zum Unterschied zwischen JavaScript parseInt() und Number()

Lernziele: Die beiden Funktionen parseInt() und N...

Detaillierte Zusammenfassung häufig verwendeter MySQL-Funktionen

Inhaltsverzeichnis Allgemeine MySQL-Funktionen 1....

JavaScript imitiert die Spezialeffekte der Jingdong-Lupe

In diesem Artikel wird der spezifische Code von J...

TCP-Socket-SYN-Warteschlange und Accept-Warteschlangen-Unterschiedsanalyse

Zunächst müssen wir verstehen, dass ein TCP-Socke...

Berechnete Eigenschaften und Listenerdetails

Inhaltsverzeichnis 1. Berechnete Eigenschaften 1....

Zwei Möglichkeiten zum korrekten Bereinigen von MySQL-Binlog-Protokollen

mysql bereinigt Binlog-Protokolle korrekt Vorwort...

So stellen Sie ein Vue-Projekt mit Docker-Image + nginx bereit

1. Vue-Projekt verpacken Geben Sie den folgenden ...

SQL-Aggregation, Gruppierung und Sortierung

Inhaltsverzeichnis 1. Aggregierte Abfrage 1. COUN...