【发布时间】:2014-12-10 02:34:52
【问题描述】:
我正在尝试执行此 sql 查询,但发生异常...我在 PhpMyAdmin 中尝试了该查询,它运行正常。
<?php
$criteria=new CDbCriteria;
$criteria->condition='select min(purchase_order_id) from purchase_order where purchase_order_id >'.$model->purchase_order_id;
$nextfield = \POrder::model()->model()->findAll($criteria);
?>
例外是,
CDbCommand 执行 SQL 语句失败:SQLSTATE[42000]: Syntax error or access violation: 1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'select min(purchase_order_id) from purchase_order where purchase_order_id >65' 附近使用正确的语法。执行的 SQL 语句是:SELECT * FROM purchase_order t WHERE select min(purchase_order_id) from purchase_order where purchase_order_id >65
【问题讨论】:
-
这是一个错误的帖子对不起......但我仍然认为这不是 where 子句。
-
我相信这个想法是
$criteria->condition用于build the where clause,而不是指定整个查询。 -
我可以做些什么来执行我的查询?