Yii计算值不明显的项目

时间:2016-03-30 12:02:15

标签: php yii distinct

这听起来应该相当直接,但我很难找到答案。我使用的是Yii,一张表有4条记录,每条记录都有一个值,我希望能够计算出这个值不明显的地方

这是我目前的职能

public function getSessionsDistinctCount(){

        // Create DBCriteria
        $criteria = new CDbCriteria();
        $criteria->select = 'event_id';
        $criteria->distinct = false;

        // Find All related sessions
        $model = Session::model()->findAll($criteria);
        $count = count($model);
        return $count;
    }

我的tbl看起来像这样;

id | event_id | title
1  | 2        | name1
2  | 3        | name2
3  | 4        | name3
4  | 4        | name5

我希望这返回2的值 - 我该怎么做?

1 个答案:

答案 0 :(得分:0)

应该是

public function getSessionsDistinctCount(){

    // Create DBCriteria
    $criteria = new CDbCriteria();
    $criteria->select = 'event_id';
    $criteria->group = 'event_id';
    // Count events that appear at least twice
    $criteria->having = 'COUNT(*) > 1';

    // Find All related sessions
    $count = Session::model()->count($criteria);
    return $count;
}