MySQL Query: Mengehadkan Rekod kepada 30 Hari Terakhir
Artikel ini akan membimbing anda menulis pertanyaan MySQL untuk mendapatkan semula rekod yang ditambahkan dalam tempoh yang lepas 30 hari.
Isu timbul apabila menggunakan fungsi DATE_FORMAT ke WHERE klausa, yang memilih semua rekod dan bukannya mengehadkannya kepada tempoh yang ditentukan.
Untuk menyelesaikannya, sintaks yang betul ialah:
SELECT DATE_FORMAT(create_date, '%m/%d/%Y') FROM mytable WHERE create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()
Adalah penting untuk menggunakan DATE_FORMAT dalam klausa SELECT. Selain itu, pastikan create_date disimpan sebagai DATE dan bukan sebagai DATETIME. Jika disimpan sebagai DATETIME, gunakan NOW() dan bukannya CURDATE():
SELECT DATE_FORMAT(create_date, '%m/%d/%Y') FROM mytable WHERE create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()
Dengan mengikuti pelarasan ini, anda boleh mengehadkan pertanyaan anda dengan berkesan kepada 30 hari terakhir dan mendapatkan semula rekod yang diingini.
Atas ialah kandungan terperinci Bagaimana untuk Mengehadkan Pertanyaan MySQL kepada 30 Hari Terakhir?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!