0

私は CakePHP を学んでいますが、より複雑なデータベース クエリを操作するのに大きな問題があります。だから私はそのようなクエリを実行したいと思います:

SELECT p.name, b.value
FROM books b LEFT JOIN projects p
ON b.project_id=p.id
WHERE b.created=
(SELECT max(b.created) FROM books b WHERE b.user_id=1)
AND b.user_id=1
GROUP BY p.name

クエリを準備するための CakePHP メカニズムを使用してこれを書くのを手伝ってくれる人はいますか?

4

3 に答える 3

0

IN 句を使用します。

   SELECT p.name, b.value
   FROM books b 
   LEFT JOIN projects p ON b.project_id=p.id
   WHERE b.created IN (SELECT max(created) FROM books  WHERE user_id=1)
   AND b.user_id=1
   GROUP BY p.name
于 2013-10-08T10:51:07.213 に答える
0

Book と Projects がモデルの場合、Book モデルを使用して、CakePHP 関数を使用して直接参加できます。https: //stackoverflow.com/a/16286735/2858188 を参照してください。

于 2013-10-08T11:23:26.070 に答える