Php Yii AR:如何选择所选值计数?

Php Yii AR:如何选择所选值计数?,php,activerecord,yii,Php,Activerecord,Yii,我有一个SQL查询,它返回唯一的值以及该值在DB中的次数 SELECT sl_keyword, COUNT(sl_keyword) FROM search_log GROUP BY sl_keyword 如何在Yii中使用active record执行相同操作?此代码有效,但不返回计数。仅限关键字和语言: $criteria = new CDbCriteria(); $criteria->select = 'sl_keyword, sl_language, C

我有一个SQL查询,它返回唯一的值以及该值在DB中的次数

SELECT sl_keyword, COUNT(sl_keyword)
FROM search_log
GROUP BY sl_keyword
如何在Yii中使用active record执行相同操作?此代码有效,但不返回计数。仅限关键字和语言:

$criteria            = new CDbCriteria();
$criteria->select    = 'sl_keyword, sl_language, COUNT(sl_keyword) as times';
$criteria->condition = 'sl_datetime >= :date_from AND sl_datetime <= :date_to';
$criteria->group     = 'sl_keyword, sl_language';
$criteria->offset    = $offset;
$criteria->limit     = $itemsPerPage;
$criteria->params    = array(':date_from' => $dateFrom, ':date_to' => $dateTo);
$result              = self::model()->findAll($criteria);
$criteria=新的CDbCriteria();
$criteria->select='sl_关键字,sl_语言,计数(sl_关键字)作为时间';
$criteria->condition='sl\u datetime>=:date\u from和sl\u datetime这样试试(我假设您使用的是foreach循环)


将代码放在您尝试使用count的地方,放在您使用$result数组的地方?使用
Yii::app()->db->createCommand($sql)->queryAll()
而不是AR
foreach($result as $r)
{
   $times =  $r['times'];  // get like this
   $sl_keyword =  $r['sl_keyword'];
   $sl_language =  $r['sl_language'];
}