我正在努力找出为什么我的查询返回零行。我已经广泛尝试在这个问题上解决这个问题,但没有得到体面的结果。
它的要点是:
$mydate=date("Y-m-d",strtotime("-3 months"));
$foo_query=$DBH->prepare("SELECT * FROM BarTable WHERE postdate = :postdate AND postdate > '$mydate' ORDER BY postdate DESC");
$foo_query->execute( array('postdate' => $_REQUEST['postdate']) );
编辑:这个查询应该说取日期,将其设置为过去三个月,并将其命名为 $mydate。然后从 BarTable 中取出 postdate 大于 $mydate 的所有字段,然后执行查询。
刚刚有人向我指出,我所说的是我正在选择 postdate 等于 3 个月前并且大于$mydate
.
我不明白我怎么这么说。:postdate
不等于 3 个月前,因此postdate = :postdate
不能选择 postdate 等于 3 个月前的行。
为了正确显示我的行,我之前输入了WHERE postdate > '$mydate'
.
如何键入postdate = :postdate AND postdate > '$mydate'
以便我使用参数并确保根据大于选择数据$mydate
?