处理Yii中的关系ActiveRecords的最佳方法

时间:2013-09-13 13:37:32

标签: php sql activerecord yii

我对使用ActiveRecords从数据库“获取”数据的不同方式感到困惑。对于这个特定的问题,我不知道我应该使用model-> findAll(),条件(允许使用分页),或者必要时使用纯SQL(假设我需要在GridView中显示输出)。 / p>

我在这里要做的是列出我公司“公司”中的所有公司以及每个公司支付多少钱。付款在“交易”表中登记,该表具有代表金额的字段“值”。

所以,如果我不得不使用SQL查询,那就像是:

SELECT * 
FROM company 
LEFT OUTER JOIN transaction 
    ON company.id = transaction.company 
GROUP BY value

简而言之,实现这一目标的最简单方法是什么? 谢谢。

1 个答案:

答案 0 :(得分:0)

dataprovider的代码

$dataProvider=new CActiveDataProvider('Company', array(
    'criteria'=>array(
        'with'=>array('transaction'),
        'group' = 't.value'
    ),
    'pagination'=>array(
        'pageSize'=>20,
    ),
));