Als häufig verwendete Datenbank erfordert MySQL viele Operationen. Es ist sehr praktisch für digitale Operationen. In diesem Abschnitt finden Sie einige statistische Fälle zu Ihrer Information! Die Bestelltabelle zum Beispiel: Tabelle „yyd_order“ erstellen ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `user_id` int(11) NICHT NULL, `order_nid` varchar(50) NICHT NULL, `status` varchar(50) NICHT NULL STANDARD '0', `Geld` Dezimalzahl (20,2) NICHT NULL STANDARD '0,00', `create_time` Zeitstempel NICHT NULL STANDARD CURRENT_TIMESTAMP, `update_time` Zeitstempel NICHT NULL STANDARD CURRENT_TIMESTAMP BEI UPDATE CURRENT_TIMESTAMP, Primärschlüssel (`id`), SCHLÜSSEL `userid` (`user_id`), SCHLÜSSEL `createtime` (`create_time`), SCHLÜSSEL `updatetime` (`update_time`) )ENGINE=InnoDB; 1. Zählen Sie die Anzahl der pro Tag eingegangenen Bestellungen, date_format Wählen Sie DATE_FORMAT (t. `Erstellungszeit`, '%Y-%m-%d') t_date, ANZAHL (1) t_Anzahl von t_Reihenfolge t, wobei t. `Erstellungszeit` > '2018-05-11' GRUPPE NACH DATE_FORMAT (t. `Erstellungszeit`, '%Y-%m-%d'); 2. Zählen Sie eingehende Bestellungen stündlich SELECT DATE_FORMAT(t.`Erstellungszeit`, '%Y-%m-%d %H') t_Stunde, ANZAHL(1) t_Anzahl FROM t_Reihenfolge t WHERE t.`Erstellungszeit` > '2018-05-11' GROUP BY DATE_FORMAT(t.`Erstellungszeit`, '%Y-%m-%d %H'); 3. Vergleich des Bestellvolumens im Vergleich zu gestern, Bestellung nach h, Datum Wählen Sie DATE_FORMAT (t. `Erstellungszeit`, '%Y-%m-%d %H') t_date, ANZAHL (1) t_Anzahl aus yyd_Reihenfolge t, wobei t. `Erstellungszeit` > '2018-05-11' GRUPPE NACH DATE_FORMAT (t. `Erstellungszeit`, '%Y-%m-%d %H') ORDER BY DATE_FORMAT(t.`Erstellungszeit`, '%H'),DATE_FORMAT(t.`Erstellungszeit`, '%Y-%m-%d %H'); 4. Verglichen mit der gleichen Stunde der letzten Woche, die Bestellung eingegangen, Datum in, Bestellung bis Wählen Sie DATE_FORMAT (t.`Erstellungszeit`, '%Y-%m-%d %H') t_date, COUNT (1) t_count FROM yyd_order t WHERE DATE_FORMAT(t.`Erstellungszeit`,'%Y-%m-%d') IN ('2018-05-03','2018-05-11') GRUPPE NACH DATE_FORMAT(t.`Erstellungszeit`, '%Y-%m-%d %H') ORDER BY DATE_FORMAT(t.`Erstellungszeit`, '%H'),DATE_FORMAT(t.`Erstellungszeit`, '%Y-%m-%d %H'); 5. Zählen Sie die zurückgegebenen Werte im Bemerkungsfeld, gruppieren Sie nach Bemerkung wie ... Wählen Sie DATE_FORMAT(t.`create_time`, '%Y-%m-%d') t_date, ANZAHL(1) t_count, SUBSTRING_INDEX(SUBSTRING_INDEX(t.`msg`, '{', -1), '}', 1) t_rsp_msg FROM cmoo_tab t WO t.`create_time` > '2018-05-17' UND t.`rsp_msg` WIE '%nextProcessCode%C9000%' GROUP BY DATE_FORMAT(t.`create_time`, '%Y-%m-%d'),SUBSTRING_INDEX(SUBSTRING_INDEX(t.`rsp_msg`, '{', -1), '}', 1); 6. Zählen Sie die Intervalle jedes Betrags jede Stunde, summieren Sie 1 0, zählen Sie jeweils Wählen Sie DATE_FORMAT (t.create_time, '%Y-%m-%d') t_date, SUMME (WENN (t. `amount`>0 UND t. `amount`<1000, 1, 0)) t_0_1000, SUMME (WENN (t. `amount`>1000 UND t. `amount`<5000, 1, 0)) t_1_5000, SUMME (WENN (t. `Betrag`> 5000, 1, 0)) t_5000m VON mobp2p. `yyd_order` t WO t. `Erstellungszeit` > '2018-05-11' GRUPPE NACH DATE_FORMAT (t. `Erstellungszeit`, '%Y-%m-%d'); 7. Zählen Sie eingehende Bestellungen um eine halbe Stunde, Etage h / 30, ebenso 10 Minuten, 20 Minuten SELECT CONCAT(DATE_FORMAT(Erstellungszeit, '%Y-%m-%d %H:' ),IF(FLOOR(DATE_FORMAT(Erstellungszeit, '%i') / 30 ) = 0, '00','30')) AS Zeitbereich, COUNT(*) VON yyd_order WO Erstellungszeit>'2018-05-11' GRUPPIEREN NACH Zeitbereich ORDER BY DATE_FORMAT(Erstellungszeit, '%H:%i'), DATE_FORMAT(Erstellungszeit, '%Y-%m-%d') DESC; 8. Erfolgsrate, Fehlerrate, temporärer Tabellenbeitritt pro Stunde WÄHLEN SIE * AUS (SELECT DATE_FORMAT(t.`create_time`, '%Y-%m-%d') t_date,COUNT(1) 'Anzahl der Erfolge' FROM yyd_order t WHERE t.`create_time` > '2018-05-17' AND t.`status` = 'repay_yes' GROUP BY DATE_FORMAT(t.`create_time`, '%Y-%m-%d')) t1 RECHTS BEITRETEN (AUSWÄHLEN DATE_FORMAT(t.`create_time`, '%Y-%m-%d') t_date,ANZAHL(1) 'Gesamt' AUS yyd_order t WO t.`create_time` > '2018-05-11' GRUPPE NACH DATE_FORMAT(t.`create_time`, '%Y-%m-%d')) t2 AUF t1.t_date=t2.t_date; 9. Aktualisieren Sie den letzten Protokollstatuswert in der Protokolltabelle auf den Status in der Informationstabelle, aktualisieren Sie a join b auf xx und setzen Sie a.status = b.status, wobei tmp nach Benutzer-ID tmp2 gruppiert ist. Achten Sie auf den Index UPDATE t_order t0 LINKS JOIN (SELECT * FROM (SELECT * FROM t_order_log t WHERE t.create_time>'2018-05-11' ORDER BY id DESC) t1 GROUP BY t1.user_id ) ON t.user_id=t2.user_id SET t0.`status`=t2.status WHERE t0.`create_time`>'2018-05-11' AND t0.`status`=10; 10. Sichern Sie die Tabelle und erstellen Sie die Tabelle als „select xxx where xxx“ TABELLE t_m ERSTELLEN ALS SELECT * FROM t_order; 11. Ändern Sie einfach die Notizen, ohne die Tabelle zu sperren, schnell, alle Typen sind konsistent Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
>>: So verwenden Sie den SS-Befehl anstelle von Netstat im Linux-Betrieb und bei der Wartung
1. Schreiben Sie das Dockerfile (1) Klicken Sie m...
Die vier Eigenschaftswerte von Position sind: 1.V...
Inhaltsverzeichnis Vorwort Was ist Datenbindung? ...
Referenzdokumentation Offizielle Docker-Installat...
Wie lädt man das JAR-Paket in ein privates Lager ...
Ob MySQL bei der Ausführung von Vorgängen wie Ein...
Inhaltsverzeichnis Vorwort 1. Rekursive Komponent...
Die SSH-Public-Key-Authentifizierung ist eine der...
Das Erstellen eines Images ist ein sehr wichtiger...
Inhaltsverzeichnis 1 Docker installieren 2 Konfig...
Inhaltsverzeichnis Szeneneinstellung Spielressour...
Kubernetes ist aufgrund seiner Anwendungsportabil...
Verstehen Sie zunächst die Funktion updatexml() U...
Inhaltsverzeichnis 1. Phänomen 2. Lösung 3. Zusam...
In CSS ist Text eines der häufigsten Dinge, mit d...