Nehmen Sie als Beispiel drei aufeinanderfolgende Tage und verwenden Sie das Tool: MySQL. 1. SQL-Tabelle erstellen:Tabelle erstellen, falls nicht vorhanden: order(id varchar(10),date datetime,orders varchar(10)); in Reihenfolge einfügen Werte('1', '2019/1/1',10); in Reihenfolge einfügen Werte('1', '2019/1/2',109); in Reihenfolge einfügen Werte('1', '2019/1/3',150); in Reihenfolge einfügen Werte('1', '2019/1/4',99); in Reihenfolge einfügen Werte('1', '2019/1/5',145); in Reihenfolge einfügen Werte('1', '2019/1/6',1455); in Reihenfolge einfügen Werte('1', '2019/1/7',199); in Reihenfolge einfügen Werte('1', '2019/1/8',188); in Reihenfolge einfügen Werte('4', '2019/1/1',10); in Reihenfolge einfügen Werte('2', '2019/1/2',109); in Reihenfolge einfügen Werte('3', '2019/1/3',150); in Reihenfolge einfügen Werte('4', '2019/1/4',99); in Reihenfolge einfügen Werte('5', '2019/1/5',145); in Reihenfolge einfügen Werte('6', '2019/1/6',1455); in Reihenfolge einfügen Werte('7', '2019/1/7',199); in Reihenfolge einfügen Werte('8', '2019/1/8',188); in Reihenfolge einfügen Werte('9', '2019/1/1',10); in Reihenfolge einfügen Werte('9', '2019/1/2',109); in Reihenfolge einfügen Werte('9', '2019/1/3',150); in Reihenfolge einfügen Werte('9', '2019/1/4',99); in Reihenfolge einfügen Werte('9', '2019/1/6',145); in Reihenfolge einfügen Werte('9', '2019/1/9',1455); in Reihenfolge einfügen Werte('9', '2019/1/10',199); in Reihenfolge einfügen Werte('9', '2019/1/13',188); Sehen Sie sich das Datenblatt an: 2. Verwenden Sie die Sortierfunktion row_number() over(), um die Rangfolge jeder ID zu berechnen. Das SQL lautet wie folgt:Wählen Sie *, Zeilennummer () über (Partition nach ID, Sortierung nach Datum) 'Rang' ab Bestellung wobei „Bestellungen“ nicht NULL ist; Datenblatt anzeigen: 3. Subtrahieren Sie das Rangfeld vom Datumsfeld. Das SQL lautet wie folgt:wähle *,DATE_SUB(ein.Datum,Intervall,ein.Rang,Tag) 'date_sub' aus( Wählen Sie *, Zeilennummer () über (Partition nach ID, Sortierung nach Datum) 'Rang' ab Bestellung wobei „Bestellungen“ nicht NULL ist ) A; Sehen Sie sich die Daten an: 4. Gruppieren Sie nach ID und Datum und berechnen Sie die Anzahl der gruppierten Elemente (Anzahl) sowie die frühesten und spätesten Anmeldezeiten. Das SQL lautet wie folgt:wähle b.id,min(Datum) 'Startzeit',max(Datum) 'Endzeit',Anzahl(*) 'Datumsanzahl' aus( wähle *,DATE_SUB(ein.Datum,Intervall,ein.Rang,Tag) 'date_sub' aus( Wählen Sie *, Zeilennummer () über (Partition nach ID, Sortierung nach Datum) 'Rang' ab Bestellung wobei „Bestellungen“ nicht NULL ist ) ) B Gruppieren nach b.date_sub,id mit count(*) >= 3 ; Sehen Sie sich die Daten an: Quellen: SQL-Abfrage für Benutzer, die an mindestens sieben aufeinanderfolgenden Tagen Bestellungen aufgegeben haben Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Zusammenfassung der für die Front-End-Entwicklung erforderlichen allgemeinen Toolfunktionen
>>: Neonlichteffekte mit reinem CSS3 umgesetzt
Einfache Installation von opencv2: conda installi...
Ich verwende einen Platzhalter in einer Texteinga...
Beispiel für einen WeChat-Applet-Rechner. Zu Ihre...
Aus Erfahrung weiß man, dass es eine gute Angewoh...
Inhaltsverzeichnis Verwenden von Slots in Vue: Sl...
1. Laden Sie die virtuelle Maschine herunter Offi...
Vorwort In der täglichen Entwicklung stoßen wir h...
Vorwort Aus Kostengründen kaufen die meisten Webm...
Unsere erfahrenen Vorgänger haben zahllose Codes ...
Es gibt einige Probleme, die nicht auf Vue beschr...
Installieren Sie Grafana. Die offizielle Website ...
Inhaltsverzeichnis 1. Installation: 2. Verwendung...
1. Netzwerkoptimierung YSlow hat 23 Regeln. Diese...
In diesem Artikelbeispiel wird der spezifische Co...
Betriebssystem: Alibaba Cloud ESC-Instanz centos7...