我有一个Yii STAT Relation被定义为提供分组SUM
结果,但是当我在我的视图中访问该关系时,唯一的值是最新的单个值而不是每个值。
例如,这是我的关系:
'total_salaries_by_job' => array(
self::STAT,
'Employee',
'department_id',
'select' => 'job_type_id, SUM(salary)',
'group'=>"job_type_id"
)
这将生成以下SQL:
SELECT
department_id AS c
, job_type_id
, SUM(salary) AS s
FROM Employee AS t
WHERE t.department_id = 1
GROUP BY
department_id
, job_type_id
手动运行,结果集为:
c | job_type_id | s
------+----------------+---------
1 | 1 | 233000
------+----------------+---------
1 | 2 | 25000
------+----------------+---------
1 | 3 | 179000
但是,在我看来,如果我执行以下操作:
<pre>
<?php print_r($department->total_salaries_by_job); ?>
</pre>
结果很简单:179000
,而我期望它是一个包含3个元素的数组。
是按照STAT关系的工作方式返回1个值还是还有其他我需要做的事情? 有可能做我正在尝试的事情吗?
答案 0 :(得分:1)
您可以执行以下操作,但不能使用STAT关系来执行此操作。而是使用Normal HAS_MANY关系并使用相同的select语句。