Thank you again John. I just can't see how it could not be done more easily. I have 1 million records for Parent model. That sub-query could take more time than users are willing to wait.
I can write SQL like this for example SELECT p.id, p.name, c.name FROM parents p LEFT JOIN children c ON p.id = c.parent_id WHERE c.name IS NULL; How do I make CakePHP do something like this? 2014年11月18日火曜日 3時38分31秒 UTC+9 John Andersen: > > Ok, if you cannot modify the database tables, then the other option is to > use sub-queries, see the CakePHP book at: > http://book.cakephp.org/2.0/en/models/retrieving-your-data.html#sub-queries > > My understanding of this, is that you first construct the SQL statement > for finding all the parent ids in the child table, then uses that SQL > statement as a condition for finding all parent records with the id not > being found by the previous SQL statement. > > Hope that helps you out :) > Enjoy, John > > On Monday, 17 November 2014 06:05:48 UTC+2, Kento Furui wrote: >> >> Thank you John. >> >> counterCache seems to be a good idea. >> But there must be a way to do this *without adding a column* to an >> existing table. >> [snip] >> > -- 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
