在查询中使用“WHERE”时,PDO失败

时间:2017-07-12 02:46:55

标签: php sql postgresql pdo silex

我正在使用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”在架构中没有大写,它被格式化为整数。表中的Id值范围为1到5000,并且填充了随机条目,其中许多条目应满足查询。

出了什么问题?

2 个答案:

答案 0 :(得分:3)

首先出现

SELECT * FROM my_table WHERE id > 3000 LIMIT 50

答案 1 :(得分:2)

限制在where子句

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