簡體   English   中英

MySQL獲取具有特定日期的記錄

[英]Mysql get records with specific date

我有一個表,其中包含一個名為timestamp類型的date的字段。 我只檢索特定日期的行。

我的PHP腳本以dd-MM-YYYY格式接收日期

這是我解析查詢日期的方式:

$converted_date = date("Y-m-d", strtotime($date));

這是我的WHERE子句:

WHERE DATE(date) = '" . $converted_date . "' ORDER BY date DESC"

我總是得到一個空的結果。

正如這里提到的

永遠不要使用DATE(datecolumns)='2012-12-24'這樣的選擇器-它是性能殺手:

它將為所有不匹配的行(包括那些行)計算DATE()

使用起來更快

SELECT * FROM tablename 
WHERE columname BETWEEN '2012-12-25 00:00:00' AND '2012-12-25 23:59:59'

您需要調整where子句以返回當天午夜和午夜之間的所有記錄。

$converted_date = date("Y-m-d", strtotime($date));
//$converted_date2 would equal that day up to 23:59:59
WHERE date BETWEEN '" . $converted_date . "' AND '.$converted_date2.' ORDER BY date DESC"

雖然你也可以使用

WHERE date >= CURDATE()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM