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

So erhalten Sie die Verkaufsdaten der letzten 3 Monate in MySQL

Es ist nützlich, die Verkaufsdaten der letzten 3 Monate zu erhalten, um Verkaufstrends zu verstehen, Berichte und Datenanalysen durchzuführen. So erhalten Sie die Verkaufsdaten der letzten 3 Monate in MySQL für Ihr Unternehmen/Ihre Website. Wir werden uns ansehen, wie Datensätze für die letzten 3 Monate mithilfe der INTERVAL-Funktion in MySQL ausgewählt werden.

So erhalten Sie die Verkaufsdaten der letzten 3 Monate in MySQL

Hier sind die Schritte zum Abrufen der Verkaufsdaten der letzten 3 Monate in MySQL. Nehmen wir an, Sie haben die folgende Tabelle sales(order_date, amount) die tägliche Verkaufsinformationen enthält.

mysql> select order_date,sale from sales;

(showing only last few records)
+------------+------+
| order_date | sale |
+------------+------+
| 2020-01-28 |  230 |
|        ... |  ... |
| 2020-05-29 |  300 |
| 2020-05-30 |  250 |
| 2020-05-31 |  250 |
| 2020-06-01 |  250 |
| 2020-06-02 |  150 |
| 2020-06-03 |  300 |
| 2020-06-04 |  200 |
| 2020-06-05 |  200 |
| 2020-06-06 |  250 |
| 2020-06-07 |  150 |
| 2020-06-08 |  300 |
| 2020-06-09 |  200 |
+------------+------+

Bonus-Lesung:So erhalten Sie Aufzeichnungen des aktuellen Monats

Hier ist die SQL-Abfrage, um die Verkaufsdaten der letzten 3 Monate in MySQL abzurufen, auch bekannt als gleitende 3-Monats-Verkäufe. Wir verwenden die Funktion INTERVAL() , um Verkaufsdaten für die letzten 3 Monate abzurufen.

mysql>select order_date,sale from sales
where order_date > now() - INTERVAL 3 MONTH;

(showing only last few records)
+------------+------+
| order_date | sale |
+------------+------+
| 2020-02-09 |  230 |
|        ... |  ... |
| 2020-05-29 |  300 |
| 2020-05-30 |  250 |
| 2020-05-31 |  250 |
| 2020-06-01 |  250 |
| 2020-06-02 |  150 |
| 2020-06-03 |  300 |
| 2020-06-04 |  200 |
| 2020-06-05 |  200 |
| 2020-06-06 |  250 |
| 2020-06-07 |  150 |
| 2020-06-08 |  300 |
| 2020-06-09 |  200 |
+------------+------+

In der obigen SQL-Abfrage weisen wir MySQL an, Verkaufsdaten für alle Daten zu erhalten, bei denen order_date liegt innerhalb unseres angegebenen INTERVALLS, d. h. in den letzten 3 Monaten ab JETZT.

Bonuslektüre:So erstellen Sie ein Histogramm in MySQL

Da verschiedene Monate eine unterschiedliche Anzahl von Tagen haben, wenn Sie INTERVAL 3 Monate erwähnen , MySQL erhält Daten nach genau demselben Tag des Monats, vor 3 Monaten. Das heißt, wenn heute der 9. Juni ist, werden Verkaufsdaten vom 9. März abgerufen.

Wenn Sie die Verkaufsdaten der letzten 90 Tage abrufen möchten, finden Sie hier die SQL-Abfrage, um die Verkaufsdaten der letzten 90 Tage abzurufen.

mysql>select order_date,sale from sales
where order_date > now() - INTERVAL 90 DAY;

(showing only last few records)
+------------+------+
| order_date | sale |
+------------+------+
| 2020-03-11 |  230 |
|        ... |  ... |
| 2020-05-29 |  300 |
| 2020-05-30 |  250 |
| 2020-05-31 |  250 |
| 2020-06-01 |  250 |
| 2020-06-02 |  150 |
| 2020-06-03 |  300 |
| 2020-06-04 |  200 |
| 2020-06-05 |  200 |
| 2020-06-06 |  250 |
| 2020-06-07 |  150 |
| 2020-06-08 |  300 |
| 2020-06-09 |  200 |
+------------+------+

Bonuslektüre:Wie man die Konversionsrate in MySQL berechnet

Wenn Sie mehrere Zeilen für jedes Bestelldatum haben, müssen Sie die täglichen Verkäufe aggregieren, wenn Sie die Verkaufsdaten der letzten 3 Monate erhalten. Zum Beispiel, wenn Sie eine Verkaufstabelle haben, wie unten gezeigt

mysql> select order_date,sale from sales;

(showing only last few records)
+---------------------+------+
| order_date          | sale |
+---------------------+------+
| 2020-01-28 09:30:35 |  23  |
| 2020-01-28 10:10:00 |  30  |
| 2020-01-28 11:00:15 |  20  |
| 2020-01-28 14:50:35 |  15  |
| 2020-01-28 15:30:36 |  25  |
| 2020-01-28 17:10:55 |  15  |
|                 ... |  ... |
+---------------------+------+

Dann ist hier die Abfrage zum Abrufen der Verkaufsdaten der letzten 3 Monate, nachdem die täglichen Verkäufe aggregiert wurden

mysql>select date(order_date),sale from sales
      where order_date > now() - INTERVAL 3 MONTH
      group by date(order_date);

(showing only last few records)
+------------+------+
| order_date | sale |
+------------+------+
| 2020-03-09 |  230 |
|        ... |  ... |
| 2020-05-29 |  300 |
| 2020-05-30 |  250 |
| 2020-05-31 |  250 |
| 2020-06-01 |  250 |
| 2020-06-02 |  150 |
| 2020-06-03 |  300 |
| 2020-06-04 |  200 |
| 2020-06-05 |  200 |
| 2020-06-06 |  250 |
| 2020-06-07 |  150 |
| 2020-06-08 |  300 |
| 2020-06-09 |  200 |
+------------+------+

Sie können diese Verkaufsdaten mit einem Diagrammtool wie Ubiq in einem Liniendiagramm darstellen.

Sie können diese Verkaufsdaten auch für jeden Monat mit der folgenden Abfrage aggregieren. Wir verwenden DATE_FORMAT, um Monatsnamen aus Datumswerten zu erhalten.

mysql>select date_format(order_date,'%b'),sale from sales
      where order_date > now() - INTERVAL 3 MONTH
      group by date_format(order_date,'%b');


+------------+-------+
| order_date |  sale |
+------------+-------+
| Mar        |   830 |
| Apr        | 10300 |
| May        | 12250 |
| Jun        |  1250 |
+------------+-------+

und zeichnen Sie es wie unten gezeigt in einem Balkendiagramm auf, das mit Ubiq erstellt wurde.

Das ist es! Hoffentlich können auch Sie die Verkaufsdaten der letzten 3 Monate in MySQL für Ihr Unternehmen/Ihre Website/App abrufen und mit Ihrem Team teilen.

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.