Przydatne jest uzyskanie danych sprzedaży z poprzednich 3 miesięcy, aby zrozumieć trendy sprzedaży, raportować i analizować dane. Oto jak uzyskać dane sprzedaży z ostatnich 3 miesięcy w MySQL dla Twojej firmy/strony internetowej. Przyjrzymy się, jak wybrać rekordy z ostatnich 3 miesięcy za pomocą funkcji INTERVAL w MySQL.
Jak uzyskać dane sprzedaży z ostatnich 3 miesięcy w MySQL
Oto kroki, aby uzyskać dane sprzedaży z ostatnich 3 miesięcy w MySQL. Załóżmy, że masz następującą tabelę sprzedaż(data_zamówienia, kwota) który zawiera informacje o codziennej sprzedaży.
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 | +------------+------+
Przeczytaj bonus:Jak uzyskać rekordy z bieżącego miesiąca
Oto zapytanie SQL, aby uzyskać dane sprzedaży z ostatnich 3 miesięcy w MySQL, znane również jako 3-miesięczna sprzedaż krocząca. Używamy funkcji INTERVAL(), aby uzyskać dane o sprzedaży z ostatnich 3 miesięcy.
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 | +------------+------+
W powyższym zapytaniu SQL mówimy MySQL, aby pobierał dane sprzedaży dla wszystkich dat, w których data_zamówienia mieści się w określonym przez nas PRZEDZIALE, czyli w ciągu ostatnich 3 miesięcy od TERAZ.
Przeczytaj bonus:Jak utworzyć histogram w MySQL
Ponieważ różne miesiące mają różną liczbę dni, kiedy wspomnisz o INTERVAL 3 months , MySQL otrzyma dane dokładnie po tym samym dniu miesiąca, przed 3 miesiącami. Oznacza to, że jeśli dzisiaj jest 9 czerwca, otrzyma dane o sprzedaży z 9 marca
Jeśli chcesz uzyskać dane sprzedaży z ostatnich 90 dni, oto zapytanie SQL, aby uzyskać dane sprzedaży z ostatnich 90 dni.
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 | +------------+------+
Przeczytaj bonus:Jak obliczyć współczynnik konwersji w MySQL
Jeśli masz wiele wierszy dla każdej daty_zamówienia, będziesz musiał zagregować dzienną sprzedaż, gdy uzyskasz dane sprzedaży z ostatnich 3 miesięcy. Na przykład, jeśli masz tabelę sprzedaży, jak pokazano poniżej
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 | | ... | ... | +---------------------+------+
Następnie oto zapytanie, aby uzyskać dane sprzedaży z ostatnich 3 miesięcy, po zsumowaniu dziennej sprzedaży
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 | +------------+------+
Możesz wykreślić te dane sprzedaży na wykresie liniowym za pomocą narzędzia do tworzenia wykresów, takiego jak Ubiq.
Możesz również zagregować te dane sprzedaży dla każdego miesiąca, korzystając z następującego zapytania. Używamy DATE_FORMAT, aby uzyskać nazwy miesięcy z wartości dat.
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 | +------------+-------+
i wykreśl go na wykresie słupkowym, jak pokazano poniżej, utworzonym za pomocą Ubiq.
Otóż to! Mamy nadzieję, że Ty również możesz uzyskać dane sprzedaży z ostatnich 3 miesięcy w MySQL dla swojej firmy/strony internetowej/aplikacji i udostępnić je swojemu zespołowi.
Jeśli chcesz tworzyć wykresy, dashboardy i raporty z bazy danych MySQL, możesz wypróbować Ubiq. Oferujemy 14-dniowy bezpłatny okres próbny.