Ibland kan du behöva få de senaste 7 dagarnas poster eller få rader från de senaste 7 dagarna i MySQL. Du kan enkelt få poster från de senaste 7 dagarna i MySQL, även om det inte finns någon funktion för det. Här är SQL-frågan för att välja poster för de senaste 7 dagarna.
Hur man får poster från de senaste 7 dagarna i MySQL
Här är SQL för att få poster från de senaste 7 dagarna i MySQL. Låt oss säga att du har följande tabell försäljning(orderdatum, rea) som innehåller dagliga försäljningsdata.
mysql> create table sales(order_date date,sale int); mysql> insert into sales(order_date, sale) values('2020-06-01',237), ('2020-06-02',230), ('2020-06-03',220), ('2020-06-04',210), ('2020-06-05',200), ('2020-06-06',260), ('2020-06-07',270), ('2020-06-08',240), ('2020-06-09',290), ('2020-06-10',230), ('2020-06-11',210); mysql> select * from sales; +------------+------+ | order_date | sale | +------------+------+ | 2020-06-01 | 237 | | 2020-06-02 | 230 | | 2020-06-03 | 220 | | 2020-06-04 | 210 | | 2020-06-05 | 200 | | 2020-06-06 | 260 | | 2020-06-07 | 270 | | 2020-06-08 | 240 | | 2020-06-09 | 290 | | 2020-06-10 | 230 | | 2020-06-11 | 210 | +------------+------+
Bonus Läs:Hur man får poster från de senaste 30 dagarna
Hur får du poster från de senaste 7 dagarna
Här är SQL-frågan för att hämta poster från de senaste 7 dagarna i MySQL.
mysql> select * from sales where order_date > now() - INTERVAL 7 day; +------------+------+ | order_date | sale | +------------+------+ | 2020-06-05 | 200 | | 2020-06-06 | 260 | | 2020-06-07 | 270 | | 2020-06-08 | 240 | | 2020-06-09 | 290 | | 2020-06-10 | 230 | | 2020-06-11 | 210 | +------------+------+
I ovanstående fråga väljer vi de poster där order_date faller efter ett tidigare intervall på 7 dagar. Vi använder systemfunktionen now() för att få det senaste datetime-värdet och INTERVAL-satsen för att beräkna ett datum 7 dagar i det förflutna.
Du kan också använda current_date istället för now()
mysql> select * from sales where order_date > current_date - interval 7 day;
Bonus Läs:Hur man får poster mellan 2 datum i MySQL
Så här får du data från den senaste veckan
Så här får du senaste 1 veckas rekord i MySQL
mysql> select * from sales where order_date > now() - interval 1 week; +------------+------+ | order_date | sale | +------------+------+ | 2020-06-05 | 200 | | 2020-06-06 | 260 | | 2020-06-07 | 270 | | 2020-06-08 | 240 | | 2020-06-09 | 290 | | 2020-06-10 | 230 | | 2020-06-11 | 210 | +------------+------+
Bonus Läs:Hur man får poster från de senaste 24 timmarna i MySQL
I ovanstående fråga väljer vi rader där order_date faller efter senaste 1 veckas intervall. Vi använder argumentet "1 vecka" för INTERVAL-satsen istället för att använda "7 dagar".
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!