Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да получите данни за продажбите за последните 3 месеца в MySQL

Полезно е да получите данни за продажбите за предишни 3 месеца, за да разберете тенденциите в продажбите, да направите отчети и анализ на данни. Ето как да получите данни за продажбите за последните 3 месеца в MySQL за вашия бизнес/уебсайт. Ще разгледаме как да изберем записи за последните 3 месеца с помощта на функция INTERVAL в MySQL.

Как да получите данни за продажбите за последните 3 месеца в MySQL

Ето стъпките за получаване на данни за продажбите за последните 3 месеца в MySQL. Да приемем, че имате следната таблица продажби(дата_на_поръчка, сума) която съдържа информация за ежедневните продажби.

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 |
+------------+------+

Бонус четене:Как да получите записи за текущия месец

Ето SQL заявката за получаване на данни за продажбите за последните 3 месеца в MySQL, известна също като подвижни 3-месечни продажби. Използваме функцията INTERVAL() , за да получим данни за продажбите за последните 3 месеца.

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 |
+------------+------+

В горната SQL заявка казваме на MySQL да получи данни за продажбите за всички дати, където order_date е в рамките на посочения от нас ИНТЕРВАЛ, тоест последните 3 месеца от СЕГА.

Бонус четене:Как да създадете хистограма в MySQL

Тъй като различните месеци имат различен брой дни, когато споменавате ИНТЕРВАЛ 3 месеца , MySQL ще получи данни точно след същия ден от месеца, преди 3 месеца. Тоест, ако днес е 9 юни, той ще получи данни за продажбите от 9 март.

Ако искате да получите данни за продажбите за последните 90 дни, ето SQL заявката за получаване на данни за продажбите от последните 90 дни.

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 |
+------------+------+

Бонус четене:Как да изчислим процента на конверсия в MySQL

Ако имате няколко реда за всяка order_date, тогава ще трябва да обобщите дневните продажби, когато получите данни за продажбите за последните 3 месеца. Например, ако имате таблица за продажби, както е показано по-долу

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  |
|                 ... |  ... |
+---------------------+------+

След това ето заявката за получаване на данни за продажбите за последните 3 месеца, след обобщаване на ежедневните продажби

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 |
+------------+------+

Можете да начертаете тези данни за продажбите на линейна диаграма, като използвате инструмент за диаграми като Ubiq.

Можете също да обобщите тези данни за продажбите за всеки месец, като използвате следната заявка. Използваме DATE_FORMAT, за да получим имена на месеци от стойностите на датите.

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 |
+------------+-------+

и го начертайте на стълбовидна диаграма, както е показано по-долу, създадена с Ubiq.

Това е! Надяваме се, че и вие можете да получите данни за продажбите за последните 3 месеца в MySQL за вашия бизнес/уебсайт/приложение и да ги споделите с вашия екип.

Ако искате да създавате диаграми, табла за управление и отчети от MySQL база данни, можете да опитате Ubiq. Предлагаме 14-дневен безплатен пробен период.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL автоматично прехвърля/преобразува низ в число?

  2. Как да създавате и изтривате бази данни и таблици в MySQL

  3. Как да експортирате база данни с помощта на phpMyAdmin

  4. MySQL SELECT последните няколко дни?

  5. КОРЕКЦИЯ:MySQL – команда SELECT, отказана на потребителя