在查询中使用 "WHERE" 时 PDO 失败

PDO fails when using "WHERE" in a query

我正在使用 PHPSilexPostgreSQL 数据库。我有一段代码完全按预期执行:

$statement = $app['pdo']->query("SELECT * FROM my_table LIMIT 50"); 
$string = $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($string);
return $json;

当我通过添加“WHERE”参数更改一件事时,它失败了:

$statement = $app['pdo']->query("SELECT * FROM my_table LIMIT 50 WHERE id > 3000"); 
$string = $statement->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($string);
return $json;

我检查过 "id" 在架构中没有大写并且它被格式化为整数。 table 中的 Id 值介于 1 到 5000 之间,它由随机条目填充,其中许多条目应该满足查询。

出了什么问题?

先到哪里

SELECT * FROM my_table WHERE id > 3000 LIMIT 50

limit 在 where 子句之后

$statement = $app['pdo']->query("SELECT * FROM my_tableWHERE id > 3000  LIMIT 50");