I am trying to get a SUM of a column of related records through the Containable behavior.
I've tried a number of variations based on information google turned up but I cannot get it to work:
$accounts = $this->find('all', array(
'contain' => array('Registration' => array('fields' => array('SUM(`credits`)'),
'group' => array('Registration.account_id')))
));
I soon as I add the "group" part, I get: Model "Registration" is not associated with model "Registration"
Here's what I am trying to do in SQL:
SELECT
accounts.*,
SUM(registrations.credits) AS slot_count
FROM accounts
LEFT JOIN registrations
ON (accounts.id=registrations.account_id)
AND registrations.attend=1
GROUP BY accounts.id
accounts.*,
SUM(registrations.credits) AS slot_count
FROM accounts
LEFT JOIN registrations
ON (accounts.id=registrations.account_id)
AND registrations.attend=1
GROUP BY accounts.id
Maybe I need to just use that query directly instead of trying to use Containable?
Thanks for any advice..
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP
---
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscribe@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment