Moe*_*ini 5 php mysql activerecord max yii
如何通过Yii Active Record找到数据库中一列的最大值?
我可以通过纯sql和createCommand方法来做到这一点,但我想通过Active Record和CDbCriteriaclass来做.有什么方法可以做到这一点?
Ste*_*305 12
您需要更改选择条件,如下所示.
$model = new Model;
$criteria=new CDbCriteria;
$criteria->select='max(column) AS maxColumn';
$row = $model->model()->find($criteria);
$somevariable = $row['maxColumn'];
Run Code Online (Sandbox Code Playgroud)
参考:
小智 6
这样可以避免创建不必要的临时对象:
$criteria = new CDbCriteria;
$criteria->select = 'max(column)';
// additional where conditions, if you so wish
$criteria->addColumnCondition(array('published' => 1));
$model = SomeModel::model();
$value = $model->commandBuilder->createFindCommand(
$model->tableName(), $criteria)->queryScalar();
Run Code Online (Sandbox Code Playgroud)