私は Cakephp 2.1 を使用しており、次のように SQL ステートメントを記述しています。
SELECT * FROM industry
LEFT JOIN movie ON movie.industry_id = industry.id
LEFT JOIN (
SELECT MAX(id) AS TID ,movie_id FROM trailer
GROUP BY movie_id
) AS c ON c.movie_id = movie.id
LIMIT 0, 4;
ここで、業界は「業界」モデル、映画は「映画」モデル、予告編は「予告編」モデルで、私はこれを試しました。
$options['joins'] = array(
array(
'table' => 'movies',
'alias' => 'Movie',
'type' => 'left',
'conditions' => array('Industry.id = Movie.industry_id')),
array(
'table' => 'movie_trailers',
'alias' => 'Trailer',
'type' => 'left',
'conditions' => array('Trailer.movie_id = Movie.id')));
$trailers = $this->Industry->find('all', $options);
したがって、このステートメントを Cakephp ステートメントに変換することを提案してください。