簡體   English   中英

MYSQL在不同的日期之間不返回結果

[英]MYSQL not returning results between dates are in different years

我正在嘗試查找兩個日期之間的記錄。 我的日期設置為2個php變量,即今天的日期,然后設置為今天的8周。 當兩個變量在同一年之內時,該代碼起作用,但是當日期在上一年之內時,則找不到結果。 即$ today = 2014年1月28日,$ lastmonth = 2013年12月3日。當我查看日期結果時,這些變量似乎正在正確計算。 是什么原因引起的?

<?php
$today = date('Y-m-d');
$lastmonth = date('Y-m-d', strtotime('-8 week', strtotime($today)));

$sql = mysql_query("SELECT * FROM products WHERE dated_release BETWEEN '$lastmonth' AND '$today' ORDER BY code");

$existCount = mysql_num_rows($sql); // count the row nums
if ($existCount > 0) { // evaluate the count and build display
// more code

?>

表中的dated_release字段已設置為日期字段。 這是我第一個使用php和mysql的網站。

您可以像這樣創建一個簡單的查詢

SELECT *
FROM products
WHERE dated_release BETWEEN NOW()
    AND DATE_ADD(NOW(), INTERVAL -8 WEEK);

暫無
暫無

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

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