Cake PHP присоединенный запрос возвращен как ассоциативный массив

Хорошо, вот моя структура таблицы / модели: модели связаны соответствующим образом.

Я пытаюсь запроситьсумма удерживаемой стоимости для данного идентификатора клиента, с датой для данной суммы значения в качестве ключа массива.

Изучив документы, я создал следующие параметры для своего запроса в модели клиента:

$findParameters = array(
    'conditions' => array(
        'Account.client_id' => $clientId,
        'Holding.holding_date = LAST_DAY(Holding.holding_date)', //gets month-end dates only
        'MONTH(Holding.holding_date)' => array(3,6,9,12) //Use for quarter-end dates
        ),
    'fields' => array(
        'Holding.holding_date',
        'SUM(Holding.value) AS portfolio_value'
        ),
    'group' => array('Holding.holding_date')
);

Когда я запускаю запрос, выполнив

$holdings = $this->Account->Holding->find( 'all', $findParameters );

Я получаю такой результат:

Array
(
    [0] => Array
        (
            [Holding] => Array
                (
                    [holding_date] => 2009-12-31
                )

            [0] => Array
                (
                    [portfolio_value] => 273239.07
                )

        )

    [1] => Array
        (
            [Holding] => Array
                (
                    [holding_date] => 2010-03-31
                )

            [0] => Array
                (
                    [portfolio_value] => 276625.28
                )

        )
...

Это здорово, но я хочу получить результат в массиве, подобном этому:

Array (
    [2009-12-31] => 273239.07
    [2010-03-31] => 276625.28
    ...
)

Поэтому я пытаюсь сделать:

$holdings = $this->Account->Holding->find( 'list', $findParameters )

Но я получаю ошибку:

Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Account.client_id' in 'where clause'

Запрос выглядит так, как будто он больше не выполняет объединения таблиц. Любая идея почему, учитывая, что он работает нормально, если я используюall вместоlist? И как получить желаемый результат?

РЕДАКТИРОВАТЬ: я получил свой результат, используя Cake'shash класс, но было интересно, если прямой запрос является лучшим и более эффективным методом.

Мой метод:

    $holdings = $this->Account->Holding->find( 'all', $findParameters );

    $values = Hash::extract($result, '{n}.0.portfolio_value');
    $dates = Hash::extract($result, '{n}.Holding.holding_date');

    $result = array_combine($dates, $values);
    return $result;

Ответы на вопрос(2)

Ваш ответ на вопрос