A volte potrebbe essere necessario ottenere i record della settimana corrente o recuperare i record di questa settimana per i rapporti e l'analisi. In questo articolo, vedremo come ottenere i dati della settimana corrente in MySQL.
Come ottenere i dati della settimana corrente in MySQL
Supponiamo che tu abbia la seguente tabella vendite(id, data_ordine, importo )
mysql> create table sales(id int, order_date date, amount int); mysql> insert into sales(id, order_date, amount) values(1, '2021-01-24',250), (2, '2021-01-25',250), (3, '2021-01-26',250), (4, '2021-01-27',250), (5, '2021-01-28',250), (6, '2021-01-29',250), (7, '2021-01-30',250), (8, '2021-01-31',250), (9, '2021-02-01',250); mysql> select * from sales; +------+------------+--------+ | id | order_date | amount | +------+------------+--------+ | 1 | 2021-01-24 | 250 | | 2 | 2021-01-25 | 250 | | 3 | 2021-01-26 | 250 | | 4 | 2021-01-27 | 250 | | 5 | 2021-01-28 | 250 | | 6 | 2021-01-29 | 250 | | 7 | 2021-01-30 | 250 | | 8 | 2021-01-31 | 250 | | 9 | 2021-02-01 | 250 | +------+------------+--------+
Come ottenere i record della settimana corrente in MySQL
È molto facile ottenere i dati della settimana corrente in MySQL. Ecco la query SQL per ottenere i record della settimana corrente in MySQL.
mysql> select * from sales where week(order_date)=week(now()); +------+------------+--------+ | id | order_date | amount | +------+------------+--------+ | 8 | 2021-01-31 | 250 | | 9 | 2021-02-01 | 250 | +------+------------+--------+
Nella query precedente, utilizziamo now() funzione per ottenere la data attuale e week() funzione per ottenere il numero della settimana di valori di data. Quindi selezioniamo le righe il cui numero della settimana di order_date è uguale al numero della settimana del giorno di oggi.
Come ottenere i dati degli ultimi 7 giorni in MySQL
A volte potrebbe anche essere necessario ottenere i dati degli ultimi 7 giorni in MySQL. Ecco la query SQL per ottenere i dati degli ultimi 7 giorni.
mysql> select * from sales where order_date> now() - interval 1 week; +------+------------+--------+ | id | order_date | amount | +------+------------+--------+ | 3 | 2021-01-26 | 250 | | 4 | 2021-01-27 | 250 | | 5 | 2021-01-28 | 250 | | 6 | 2021-01-29 | 250 | | 7 | 2021-01-30 | 250 | | 8 | 2021-01-31 | 250 | | 9 | 2021-02-01 | 250 | +------+------------+--------+
Nella query SQL sopra, selezioniamo le righe il cui data_ordine cade dopo gli ultimi 7 giorni. Usiamo la parola chiave INTERVAL per sottrarre 1 settimana dalla data attuale.
Hai bisogno di uno strumento di reporting per MySQL? Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!