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!