A volte potrebbe essere necessario ottenere le righe degli ultimi 15 giorni in MySQL. Ecco come ottenere i record degli ultimi 15 giorni in MySQL. Puoi anche usarlo per ottenere il numero di utenti registrati negli ultimi 15 giorni o selezionare i dati sulle vendite degli ultimi 15 giorni per ulteriori analisi.
Come ottenere i record degli ultimi 15 giorni in MySQL
Ecco i passaggi per ottenere i record degli ultimi 15 giorni in MySQL.
Supponiamo che tu abbia la seguente tabella vendite(data_ordine, vendita, ordini) che contiene il numero giornaliero di ordini e l'importo della vendita.
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 | +------------+------+--------+
Bonus Leggi:Come ottenere l'ultimo record in ogni gruppo
Come ottenere i dati sulle vendite degli ultimi 15 giorni in SQL
Ecco la query SQL per ottenere i record degli ultimi 15 giorni in 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 | +------------+------+--------+
Nella query precedente, utilizziamo la funzione di sistema now() per ottenere la data e l'ora corrente. Quindi utilizziamo la clausola INTERVAL per filtrare quei record in cui order_date cade dopo un intervallo di 15 giorni prima della data e ora attuale.
Bonus Leggi:Come ottenere i dati degli ultimi 12 mesi in MySQL
Come ottenere registrazioni e nuovi utenti negli ultimi 15 giorni
Allo stesso modo, puoi anche ottenere nuove iscrizioni e utenti negli ultimi 15 giorni in MySQL. Supponiamo che tu abbia la seguente tabella Utenti(user_id, date_joined) che contiene i dati di registrazione.
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 | +-------------+---------+
Bonus Lettura:come creare una vista MySQL
Ecco la query SQL per ottenere ogni giorno nuove iscrizioni e utenti negli ultimi 15 giorni in 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 | +-------------+---------+
Nella query precedente, utilizziamo la funzione di sistema now() per ottenere la data e l'ora corrente. Quindi utilizziamo la clausola INTERVAL per filtrare quei record in cui order_date cade dopo un intervallo di 15 giorni prima della data e ora attuale.
Questo è tutto! Come puoi vedere, è abbastanza facile ottenere i record degli ultimi 15 giorni in MySQL usando la clausola INTERVAL.
Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!