检查当前日期是两个日期+ mysql的选择查询之间(Check if the current dat

2019-07-04 03:39发布

我有如下表:

id     dateStart     dateEnd      active
1      2012-11-12    2012-12-31   0
2      2012-11-12    2012-12-31   0

我想在dateStart和dateEnd之间进行比较,今天的日期。

以下是我对这个查询:

$todaysDate="2012-26-11";
$db = Zend_Registry::get("db");
$result = $db->fetchAll("SELECT * FROM `table` WHERE active=0 AND {$todaysDate} between dateStart and dateEnd");
return $result;

但它不工作。 任何解决方案。 提前致谢。

Answer 1:

试试这个::这将解决你的问题

SELECT * FROM `table` WHERE active=0 AND CURDATE() between dateStart and dateEnd


Answer 2:

MySQL使用YYYY-MM-DD默认情况下:

$todaysDate="2012-26-11";

应该:

$todaysDate="2012-11-26";

而你需要它周围的单引号中查询。



Answer 3:

$todaysDate="2012-11-26";//changed date
$db = Zend_Registry::get("db");
$select=$db->query("SELECT * FROM `table` WHERE active=0 AND {$todaysDate} between dateStart and dateEnd");
$result = $select->fetchAll();
return $result;  


Answer 4:

$sql = mysql_query("SELECT * FROM register WHERE CURDATE() between reg_start_date and reg_end_date") or die(mysql_error());


Answer 5:

你需要把周围的更改了日期的单引号:

"SELECT * FROM `table` WHERE active=0 AND '{$todaysDate}' between dateStart and dateEnd"


文章来源: Check if the current date is between two dates + mysql select query