Rumah > Soal Jawab > teks badan
Cara menulis pertanyaan dalam MySQL untuk mendapatkan semula data selama 4 minggu yang lalu bermula dari hari ini. Saya google pertanyaan tetapi saya hanya mendapat data minggu lepas. Minggu sepatutnya bermula hari ini dan 4 minggu lepas. Di bawah ialah data saya
| sales | dated | --------------------------------- | 12 | 01-08-2022 21:00 | | 34 | 30-07-2022 21:00 | | 45 | 29-07-2022 21:00 | | 67 | 28-07-2022 21:00 | | 89 | 27-07-2022 21:00 | | 12 | 26-07-2022 21:00 | | 34 | 25-07-2022 06:00 | | 12 | 24-07-2022 21:00 | | 23 | 23-07-2022 21:00 | | 11 | 22-07-2022 21:00 | | 32 | 21-07-2022 21:00 | | 54 | 20-07-2022 21:00 | | 65 | 19-07-2022 21:00 | | 76 | 18-07-2022 15:00 | | 87 | 17-07-2022 21:00 | | 98 | 16-07-2022 21:00 | | 18 | 15-07-2022 21:00 | | 26 | 14-07-2022 21:00 | | 25 | 13-07-2022 21:00 | | 37 | 12-07-2022 21:00 | | 38 | 11-07-2022 21:00 | | 36 | 10-07-2022 21:00 | | 39 | 09-07-2022 21:00 | | 57 | 08-07-2022 21:00 | | 45 | 06-07-2022 21:00 | | 42 | 05-07-2022 21:00 | | 31 | 04-07-2022 21:00 | | 33 | 03-07-2022 21:00 | | 22 | 02-07-2022 21:00 | | 21 | 01-07-2022 21:00 |
Saya mahu output seperti yang ditunjukkan di bawah
Week-1 | sales | dated | --------------------------------- | 12 | 01-08-2022 21:00 | | 34 | 30-07-2022 21:00 | | 45 | 29-07-2022 21:00 | | 67 | 28-07-2022 21:00 | | 89 | 27-07-2022 21:00 | | 12 | 26-07-2022 21:00 | | 34 | 25-07-2022 06:00 | Week-2 | sales | dated | --------------------------------- | 12 | 24-07-2022 21:00 | | 23 | 23-07-2022 21:00 | | 11 | 22-07-2022 21:00 | | 32 | 21-07-2022 21:00 | | 54 | 20-07-2022 21:00 | | 65 | 19-07-2022 21:00 | | 76 | 18-07-2022 15:00 | Week-4 | sales | dated | --------------------------------- | 87 | 17-07-2022 21:00 | | 98 | 16-07-2022 21:00 | | 18 | 15-07-2022 21:00 | | 26 | 14-07-2022 21:00 | | 25 | 13-07-2022 21:00 | | 37 | 12-07-2022 21:00 | | 38 | 11-07-2022 21:00 | Week-3 | sales | dated | --------------------------------- | 36 | 10-07-2022 21:00 | | 39 | 09-07-2022 21:00 | | 57 | 08-07-2022 21:00 | | 45 | 06-07-2022 21:00 | | 42 | 05-07-2022 21:00 | | 31 | 04-07-2022 21:00 | | 33 | 03-07-2022 21:00 |
Sila terima terima kasih yang tulus ikhlas untuk masa berharga anda
P粉1976397532024-04-02 10:08:24
Anda boleh menggunakan nombor minggu sebagai nilai medan untuk setiap baris:
SELECT *, FLOOR(DATEDIFF(CURRENT_DATE(), dated)/7) + 1 AS week_no FROM sales WHERE dated > CURRENT_DATE() - INTERVAL 4 WEEK ORDER BY dated DESC;