Yii: получение данных на основе наивысшего среднего рейтинга

Я yiibie, и я хочу получить 5 лучших ngo из таблицы «NgoRateReviewNgo». Условие для 5 лучших Ngo заключается в том, что сначала нужно найти средний рейтинг Ngo, и после этого отобразятся те 5 Ngo, которые имеют самую высокую среднюю оценку. Это код для моего файла просмотра и содержит SQL-запрос

<div class="main"> <div class="banner"> <img src="<?php echo Yii::app()->request->baseurl;?>/img/stat1.jpg" style="width: 1170px"> </div><!--banner ending here--><br> <div class="container" style="background-color:#7AC5CD"> <div class="row"> <div class="col-md-6"> <h3 style='text-align:center; text-decoration: underline;font-family: sans-serif; color: black'>Top 5 Ngo's month wise</h3> <br> <?php for($month = 1 ; $month <=12 ; $month++) { '<br>' ; $dateObj = DateTime::createFromFormat('!m', $month); $monthName = $dateObj->format('F'); echo "<h3 style='text-align:center;color:black;'> " . $monthName . "</h3>"; $user=UserRateReviewNgo::model()->findAll(array( 'condition' => 'YEAR(date_created)=:year and MONTH(date_created)=:month', 'params' => array(':year'=>2016, ':month'=>$month), 'select'=>'max(rate),ngo_id', 'group' => 'ngo_id', 'order'=>'rate DESC', 'limit' => 5 )); $val = 100; foreach($user as $show) { $model = Ngo::model()->findByAttributes(array('id'=>$show->ngo_id,)); if (isset($model)) { echo "<div><h4><a href='".Yii::app()->request->baseUrl."/ngo/ngopage?id=$model->id'><p style='color:black;font-family:Lucida Sans Unicode;'>" . $model->ngo_name ."</p></a></h4></div> <div class='progress'> <div class='progress-bar progress-bar-danger progress-bar-striped active' role='progressbar' aria-valuenow='" . $val ."' aria-valuemin='0' aria-valuemax='100' style='width: ". $val ."%;'>" . $val . "</div> </div>"; $val = $val -21.23; } }} ?> </div> <div class="col-md-5 col-md-offset-1"> <h3 style='text-align:center; text-decoration: underline;font-family: sans-serif; color: black'>Top 5 Ngo's of the year</h3> <br> <?php // the for the year $val = 100; foreach($userYear as $show) { $model = Ngo::model()->findByAttributes(array('id'=>$show->ngo_id,)); if (isset($model)) { echo "<div><h4><a href='".Yii::app()->request->baseUrl."/ngo/ngopage?id=$model->id'><p style='color:black; font-family:Lucida Sans Unicode;'>" . $model->ngo_name ."</p></a></h4></div> <div class='progress'> <div class='progress-bar progress-bar-success progress-bar-striped active' role='progressbar' aria-valuenow='" . $val ."' aria-valuemin='0' aria-valuemax='100' style='width: ". $val ."%;'>" . $val . "</div> </div>"; $val = $val -17.96; } } ?> </div> </div> </div><!--main ending here--> </div><!--Container ending here--> 

Пожалуйста, помогите мне с этим.

это должен быть запрос

  $user=UserRateReviewNgo::model()->findAll(array( 'condition' => 'YEAR(date_created)=:year and MONTH(date_created)=:month', 'params' => array(':year'=>2016, ':month'=>$month), 'select'=>'avg(rate),ngo_id', 'group' => 'ngo_id', 'order'=>'rate DESC', 'limit' => 5 ));