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
Gestern habe ich jemandem bei der Installation ei...
Inhaltsverzeichnis 1. Lernen Sie, je nach Anforde...
Heute habe ich einen dynamischen Fensterstil für d...
In diesem Artikelbeispiel wird der spezifische Co...
Dieser Artikel veranschaulicht anhand eines Beisp...
Manche Leute sagen, dass IE9 die zweite Revolutio...
Ich glaube, jeder hat schon einmal Rubbellose ges...
In diesem Artikelbeispiel wird der spezifische Co...
Rendern Beispielcode Heute werden wir das WeChat-...
Ohne weitere Umschweife hier ein Demobild. Die im...
Inhaltsverzeichnis 1. Funktionseinführung 2. Schl...
Inhaltsverzeichnis ReagierenHooks Vorwort WarumHo...
Vor Kurzem hat das Projekt die Umgebung gewechsel...
Tatsächlich fragen wir uns jeden Tag, wann IE6 wi...
Im vorherigen Artikel haben wir das ausführliche ...