我想从date1
大于其他date2
的表格中选择所有记录。 Date1
是MySQL中的datetime
字段。 Date2
是PHP中的datetime
对象。我想比较日期和时间。这是我不工作的查询。
$sql = 'SELECT t.*
from transire t
where t.returning > '.$transire->returning.';';
错误:
Message: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error
in your SQL syntax; check the manual that corresponds to your MySQL server version
for the right syntax to use near '' at line 1
好的我明白了,我不能比较那样的php日期时间对象,但这样做的正确方法是什么?当然我可以使用Date(t.returning),但我也需要那天的时间。当前日期时间之后的所有事件。我搜索并找到了一些答案,但没有一个帮助我。谢谢!
答案 0 :(得分:1)
应该是这样的:
$sql = 'SELECT t.* from transire t where t.returning > "'.$transire->returning.'";';
答案 1 :(得分:1)
在php中为变量使用双引号,并在日期周围添加单引号:
$sql = "SELECT t.* from transire t where t.returning > '".$transire->returning."'";
通过转义变量来避免sql注入。