Zend查询大于或等于

时间:2018-04-17 15:00:58

标签: php mysql zend-framework

我的查询在MySQL中完美运行

SELECT * FROM accounts WHERE location_id=1 AND created_at>=*timestamp*

我在Zend中有一个Accounts表模型。我用了

$accounts->where(array('location_id' => 1))

当我尝试使用另一个where子句时

->where("created_at >= $timestamp")

Zend把这个错误抛给了我:

"SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 7"

我还尝试对$timestamp变量进行硬编码,删除第一个where并仅使用第二个变量,甚至尝试将语法更改为

->where("created_at >= " . $timestamp)

他们都没有奏效。任何想法?

稍后编辑

我想通了,似乎这是一个语法问题。这对我有用:

where("created_at >= '$timestamp'");

1 个答案:

答案 0 :(得分:1)

->where("start >= ?", $timestamp)

(在ZF1中)。此外,在您说的查询完美无缺的情况下,该列名为created_at