2011-08-19 28 views
0

我試圖找到一種方法,使用像最大分鐘計數SQL聚合函數來收集數據。如何使用CStatRelation Yii中

而我發現CStatRelation類似乎是我想要的。 CStatRelation doc

它可以在Yii模型類中的關係函數中使用。

的使用是這樣的:

class SomeModelClass extends CActiveRecord{ 

public function relations() { 

     return array(
      'bidCount'=>array(self::STAT,'Bid','auction_id'),//it can be used like this 


     ); 
    } 
} 

在示例代碼的rowCount時的默認值是COUNT(*)。但是,如果我想查找特定列的值,該怎麼辦呢?

如何修改代碼來檢索最大或最小?

回答

3
'maxBid' => array(self::STAT, 'Bid', 'auction_id', 'select'=>'MAX(bid_amount)'), 
+0

再次感謝,哈哈 – xiaohan2012

+1

我有Yii的stat查詢的一些問題。還有[很少](http://code.google.com/p/yii/issues/detail?id=2494)[打開](http://code.google.com/p/yii/issues/) detail?id = 2554)[issues](http://code.google.com/p/yii/issues/detail?id=1244)。在某些情況下,它更強大,更通用:'function getMaxBid(){return Yii :: app() - > db-> createCommand(「SELECT MAX(bid_amount)FROM Bid」) - > queryScalar(); }'。 然後,您可以使用'$ bid-> maxBid'作爲暱稱。 – 2011-08-23 18:20:40