1

我的统计查询尝试不起作用。从 ModelA 的视图中,我试图查询 ModelB 以查找 ModelB 中状态等于“D”且 AttributeB 等于登录用户的属性 Number 的总数。

关系:

在此处输入图像描述

关系查询尝试:

'total' => array(self::STAT, 'TableB', 'TableAId', 'select'=>'SUM(Number)', 
            'condition'=>'Status="D" AND AttributeB='.Yii::app()->user->id),
4

1 回答 1

0

当您指定 时relations(),请确保任何关系定义的第三个参数是关联两个表的外键。

在您的情况下,与 TableA 和 TableB 相关的外键是 TableAId(column in TableB) ,而不是 TableBId。因此,将您的关系定义更改为:

'total' => array(self::STAT, 'TableB', 'TableAId', 'select'=>'SUM(Number)',
    'condition'=>'Status="D" AND AttributeB='.Yii::app()->user->id),

该指南解释了这一点,以及更多。

于 2013-02-12T02:41:30.313 回答