Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So erhalten Sie Aufzeichnungen des aktuellen Monats in MySQL

Es hilft, Aufzeichnungen des aktuellen Monats in MySQL für Berichte und Datenanalysen zu erhalten. Sie können es verwenden, um Verkaufsdaten für den aktuellen Monat, die Anzahl der Anmeldungen im aktuellen Monat und andere nützliche Informationen abzurufen. So erhalten Sie Zeilen des aktuellen Monats in MySQL.

So erhalten Sie Aufzeichnungen des aktuellen Monats in MySQL

Hier sind die Schritte zum Abrufen aktueller Monatsdatensätze in MySQL. Wir werden es auch verwenden, um im Monat neue Kunden zu gewinnen.

Nehmen wir an, Sie haben die folgende Tabelle sales(order_date, sale, orders) die die tägliche Anzahl der Bestellungen und den Verkaufsbetrag enthält.

mysql> select * from sales;
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-04-28 |  300 |     10 |
| 2020-04-29 |  250 |     15 |
| 2020-04-30 |  250 |     12 |
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

Bonuslektüre:So importieren Sie CSV in MySQL Workbench

So erhalten Sie Verkaufsdaten des aktuellen Monats in MySQL

Hier ist die SQL-Abfrage, um Datensätze des aktuellen Monats in MySQL abzurufen

mysql> select * from sales
       where MONTH(order_date)=MONTH(now())
       and YEAR(order_date)=YEAR(now());
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

In der obigen Abfrage verwenden wir die Systemfunktion now() um die aktuelle Datumszeit zu erhalten. Dann erhalten wir aktuelle Monatszeilen in MySQL, indem wir Zeilen filtern, die denselben Monat und dasselbe Jahr wie die aktuelle Datumszeit haben. MONTH() und YEAR() sind eingebaute MySQL-Funktionen, um Monats- und Jahreszahlen von einem bestimmten Datum zu erhalten.

Bonuslektüre:So erstellen Sie ein Histogramm in MySQL

Wenn Ihre Datumsspalte, also order_date indiziert ist, dann ist es ratsam, keine Funktion darauf anzuwenden. Andernfalls dauert die Ausführung sehr lange. Stattdessen können Sie die folgende SQL-Abfrage verwenden, um Datensätze des aktuellen Monats in MySQL abzurufen.

mysql> SELECT * FROM sales
      WHERE order_date >= (LAST_DAY(NOW()) + INTERVAL 1 DAY - INTERVAL 1 MONTH)
      AND order_date <  (LAST_DAY(NOW()) + INTERVAL 1 DAY);
+------------+------+--------+
| order_date | sale | orders |
+------------+------+--------+
| 2020-05-01 |  250 |     14 |
| 2020-05-02 |  150 |     20 |
| 2020-05-03 |  300 |     21 |
| 2020-05-04 |  200 |     15 |
| 2020-05-05 |  200 |     17 |
| 2020-05-06 |  250 |     12 |
| 2020-05-07 |  150 |     15 |
| 2020-05-08 |  300 |     12 |
| 2020-05-09 |  200 |     18 |
+------------+------+--------+

Nachdem Sie Aufzeichnungen des aktuellen Monats in MySQL erhalten haben, können Sie sie mit einem Diagrammtool in einem gut aussehenden Diagramm darstellen, wie unten gezeigt, und es mit Ihrem Team teilen. Hier ist ein Liniendiagramm, das mit der Ubiq-Dashboard-Software erstellt wurde

Bonuslektüre:Wie man die Konversionsrate in MySQL berechnet

So erhalten Sie Anmeldungen und neue Benutzer im aktuellen Monat in MySQL

In ähnlicher Weise können Sie auch neue Anmeldungen und Benutzer im laufenden Monat in MySQL erhalten. Nehmen wir an, Sie haben die folgende Tabelle Users(user_id, date_joined) die Anmeldedaten enthält.

mysql> select * from users;
+-------------+---------+
| date_joined | user_id |
+-------------+---------+
| 2020-04-28  |     213 |
| 2020-04-28  |     214 |
| 2020-04-30  |     215 |
| 2020-04-28  |     216 |
| 2020-04-28  |     217 |
| 2020-04-30  |     218 |
| 2020-04-28  |     219 |
| 2020-04-28  |     220 |
| 2020-04-30  |     221 |
| 2020-05-01  |     222 |
| 2020-05-01  |     222 |
| 2020-05-01  |     223 |
| 2020-05-04  |     224 |
| 2020-05-04  |     225 |
| 2020-05-04  |     226 |
| 2020-05-04  |     226 |
| 2020-05-04  |     227 |
| 2020-05-04  |     228 |
| 2020-05-05  |     229 |
| 2020-05-05  |     230 |
| 2020-05-05  |     231 |
| 2020-05-05  |     232 |
| 2020-05-06  |     233 |
| 2020-05-06  |     234 |
+-------------+---------+

Hier ist die SQL-Abfrage, um täglich neue Anmeldungen und Benutzer im aktuellen Monat in MySQL zu erhalten.

mysql> select date(date_joined),count(*) from users
       where MONTH(date_joined)=MONTH(now())
       and YEAR(date_joined)=YEAR(now())
       group by date(date_joined);
+-------------------+----------+
| date(date_joined) | count(*) |
+-------------------+----------+
| 2020-05-01        |        3 |
| 2020-05-04        |        6 |
| 2020-05-05        |        4 |
| 2020-05-06        |        2 |
+-------------------+----------+

Sie können diese SQL-Abfrage auch verwenden, um die Anzahl der Benutzer in einem Monat abzurufen oder neue Benutzer im letzten Monat zu zählen. Entfernen Sie einfach date(date_joined) aus select-Klausel und entfernen Sie group by-Klausel, um die Gesamtzahl zu erhalten.

mysql> select count(*) from users
       where MONTH(date_joined)=MONTH(now())
       and YEAR(date_joined)=YEAR(now());

Bonuslektüre:Wie man fehlende Daten in MySQL einträgt

Nachdem Sie Aufzeichnungen des aktuellen Monats in MySQL erhalten haben, können Sie diese Daten mit einem Berichterstellungstool in einem Balkendiagramm oder Dashboard darstellen und mit Ihrem Team teilen. Hier ist ein Beispiel für ein Balkendiagramm, das die täglichen Anmeldungen im aktuellen Monat zeigt und mit Ubiq erstellt wurde.

Wenn Sie Diagramme, Dashboards und Berichte aus einer MySQL-Datenbank erstellen möchten, können Sie Ubiq ausprobieren. Wir bieten eine 14-tägige kostenlose Testversion an.