如何在ActiveQuery中使用where()条件与min()

Rab*_*bib 1 yii2

我正在修改此查询到Yii2 ActiveRecord.

$query = "SELECT min(sorting_value) as sorting_value FROM table WHERE sorting_value>'$variable'"
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经这样做了:

$queryValue = Mymodel::find()->min('sorting_value')->where(['sorting_value' > $sort1]);
Run Code Online (Sandbox Code Playgroud)

它显示了这个错误:

在非对象上调用成员函数where()

我该如何解决这个问题.我不能使用具有min()功能的条件.

soj*_*oju 7

由于min()不会返回ActiveQuery对象,您应该where()在之前使用:

$queryValue = Mymodel::find()->where(['>', 'sorting_value', $sort1])->min('sorting_value');
Run Code Online (Sandbox Code Playgroud)