【发布时间】:2012-11-15 01:18:59
【问题描述】:
我正在使用此代码选择一些日期小于某一天的行。当我将<=(小于)放入 sql 中时,我会抛出一个致命错误。仅添加= 时它有效(没有错误但结果错误)。
我正在使用来自 https://github.com/ajillion/PHP-MySQLi-Database-Class 的 PHP-MySQLi-Database-Class
$params = array($id, $day, $day);
$results = $db->rawQuery("
SELECT *
FROM `forecasts`
WHERE `geonameid`=? and (DAY(time_from) <= DAY(?)
OR DAY(time_to) <= DAY(?))", $params);
致命错误:问题准备查询 (SELECT * FROM
forecastsWHEREgeonameid=? and (DAY(time_from) ) 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本对应的手册在 '' 附近使用正确的语法
我做错了什么?
【问题讨论】:
-
你确定你有比较运算符吗?在我看来你想要:WHERE
geonameid=?和 (DAY(time_from) >= DAY(?) OR DAY(time_to) -
没错,不是我写的吗?
-
我在time_from之后从=
-
不,这不是问题所在。我需要找到包含一天中任何部分的时间段。
标签: php mysqli prepared-statement