Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendapatkan Rekod dengan Cekap dalam 30 Hari Terakhir dalam MySQL?

Bagaimana untuk Mendapatkan Rekod dengan Cekap dalam 30 Hari Terakhir dalam MySQL?

Mary-Kate Olsen
Lepaskan: 2024-12-17 01:02:26
asal
623 orang telah melayarinya

How to Efficiently Retrieve Records within the Last 30 Days in MySQL?

Pengoptimuman Pertanyaan MySQL: Mengambil Rekod dalam Julat Masa

Dalam perbincangan sebelum ini, pengguna mendapatkan panduan untuk mendapatkan semula rekod yang ditambahkan pada pangkalan data dalam tempoh 30 hari yang lalu, dengan keperluan khusus untuk memaparkan tarikh dalam format mm/dd/yy. Pertanyaan asal yang diberikan menghadapi isu apabila ia gagal mengehadkan keputusan kepada jangka masa yang diingini.

Setelah diperiksa, didapati bahawa isu itu berpunca daripada peletakan fungsi DATE_FORMAT yang salah. Untuk mencapai penapisan yang dikehendaki, fungsi harus digunakan dalam klausa SELECT dan bukannya klausa WHERE. Berikut ialah pertanyaan yang diperbetulkan:

SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN CURDATE() - INTERVAL 30 DAY AND CURDATE()
Salin selepas log masuk

Selain itu, adalah penting untuk ambil perhatian bahawa CURDATE() hanya mengembalikan bahagian tarikh cap waktu. Jika lajur create_date mengandungi nilai DATETIME dengan komponen masa bukan sifar, pertanyaan asal akan mengecualikan rekod hari ini. Untuk menangani perkara ini, NOW() boleh digunakan sebaliknya:

SELECT DATE_FORMAT(create_date, '%m/%d/%Y')
FROM mytable
WHERE create_date BETWEEN NOW() - INTERVAL 30 DAY AND NOW()
Salin selepas log masuk

Dengan pembetulan ini, pertanyaan akan mendapatkan semula rekod dengan betul yang memenuhi julat masa dan keperluan format yang ditentukan.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Rekod dengan Cekap dalam 30 Hari Terakhir dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan