Czasami może zajść potrzeba pobrania ostatnich 15 dni wierszy w MySQL. Oto jak uzyskać rekordy z ostatnich 15 dni w MySQL. Możesz go również użyć, aby uzyskać liczbę użytkowników zarejestrowanych w ciągu ostatnich 15 dni lub wybrać dane sprzedaży z ostatnich 15 dni do dalszej analizy.
Jak uzyskać rekordy z ostatnich 15 dni w MySQL
Oto kroki, aby uzyskać rekordy z ostatnich 15 dni w MySQL.
Załóżmy, że masz następującą tabelę sprzedaż(data_zamówienia, sprzedaż, zamówienia) który zawiera dzienną liczbę zamówień i kwotę sprzedaży.
mysql> create table sales(order_date date,sale int, orders int); mysql> insert into sales(order_date ,sale ,orders ) values( '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' , 280 , 18 ), ( '2020-05-10' , 320 , 16 ), ( '2020-05-11' , 400 , 15 ), ( '2020-05-12' , 250 , 13 ), ( '2020-05-13' , 100 , 16 ), ( '2020-05-14' , 200 , 18 ); 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 | 280 | 18 | | 2020-05-10 | 320 | 16 | | 2020-05-11 | 400 | 15 | | 2020-05-12 | 250 | 13 | | 2020-05-13 | 100 | 16 | | 2020-05-14 | 200 | 18 | +------------+------+--------+
Przeczytaj bonus:Jak uzyskać ostatni rekord w każdej grupie
Jak uzyskać dane sprzedaży z ostatnich 15 dni w SQL
Oto zapytanie SQL, aby uzyskać rekordy z ostatnich 15 dni w MySQL
mysql> select * from sales where order_date> now() - INTERVAL 15 day; +------------+------+--------+ | order_date | sale | orders | +------------+------+--------+ | 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 | 280 | 18 | | 2020-05-10 | 320 | 16 | | 2020-05-11 | 400 | 15 | | 2020-05-12 | 250 | 13 | | 2020-05-13 | 100 | 16 | | 2020-05-14 | 200 | 18 | +------------+------+--------+
W powyższym zapytaniu używamy funkcji systemowej now() aby uzyskać aktualną datę i godzinę. Następnie używamy klauzuli INTERVAL, aby filtrować te rekordy, w których data_zamówienia przypada po odstępie 15 dni przed obecną datą i godziną.
Przeczytaj bonus:Jak uzyskać dane z ostatnich 12 miesięcy w MySQL
Jak uzyskać rejestracje i nowych użytkowników w ciągu ostatnich 15 dni
Podobnie możesz również uzyskać nowe rejestracje i użytkowników w ciągu ostatnich 15 dni w MySQL. Załóżmy, że masz następującą tabelę Użytkownicy(user_id, date_joined) który zawiera dane rejestracyjne.
mysql> select * from users; +-------------+---------+ | date_joined | user_id | +-------------+---------+ | 2020-04-20 | 213 | | 2020-04-22 | 214 | | 2020-04-23 | 215 | | 2020-04-24 | 216 | | 2020-04-25 | 217 | | 2020-04-26 | 218 | | 2020-04-27 | 219 | | 2020-04-28 | 220 | | 2020-04-29 | 221 | | 2020-05-30 | 222 | | 2020-05-30 | 222 | | 2020-05-01 | 223 | | 2020-05-01 | 224 | | 2020-05-02 | 225 | | 2020-05-02 | 226 | | 2020-05-03 | 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-08 | 234 | +-------------+---------+
Przeczytaj bonus:Jak stworzyć widok MySQL
Oto zapytanie SQL umożliwiające codzienne uzyskiwanie nowych rejestracji i użytkowników w ciągu ostatnich 15 dni w MySQL.
mysql> select * from users where date_joined> now() - INTERVAL 15 day; +-------------+---------+ | date_joined | user_id | +-------------+---------+ | 2020-04-23 | 215 | | 2020-04-24 | 216 | | 2020-04-25 | 217 | | 2020-04-26 | 218 | | 2020-04-27 | 219 | | 2020-04-28 | 220 | | 2020-04-29 | 221 | | 2020-05-30 | 222 | | 2020-05-30 | 222 | | 2020-05-01 | 223 | | 2020-05-01 | 224 | | 2020-05-02 | 225 | | 2020-05-02 | 226 | | 2020-05-03 | 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-08 | 234 | +-------------+---------+
W powyższym zapytaniu używamy funkcji systemowej now() aby uzyskać aktualną datę i godzinę. Następnie używamy klauzuli INTERVAL do filtrowania tych rekordów, w których data_zamówienia przypada po odstępie 15 dni przed obecną datą i godziną.
Otóż to! Jak widać, dość łatwo jest uzyskać rekordy z ostatnich 15 dni w MySQL za pomocą klauzuli INTERVAL.
Ubiq ułatwia wizualizację danych w ciągu kilku minut i monitorowanie w pulpitach nawigacyjnych w czasie rzeczywistym. Wypróbuj już dziś!