グループ化された結果を提供するように定義されたYii STAT リレーションがありますが、ビューでリレーションにアクセスすると、唯一の値は、各値ではなく最新の単一の値です。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つだけ返していますか、それとも他に何かする必要がありますか?
私が試みていることを行うことは可能ですか?