может ли кто-нибудь сказать мне, как получить объединенный результат из нескольких таблиц в cakePHP (используя mcc-архитектуру cakePHP). Например, у меня есть три таблицы для присоединения (tbl_topics, tbl_items, tbl_votes. Их взаимосвязь определяется следующим образом: в теме может быть много элементов, а элемент может иметь много голосов. Теперь я хочу получить список тем с подсчетом все голоса по всем пунктам для каждой темы. Запрос SQL для этого написан ниже:
SELECT Topic.*, count(Vote.id) voteCount
FROM
tbl_topics AS Topic
LEFT OUTER JOIN tbl_items AS Item
ON (Topic.id = Item.topic_id)
LEFT OUTER JOIN tbl_votes AS Vote
ON (Item.id = Vote.item_id);
Моя проблема заключается в том, что я могу сделать это легко с помощью функции $this-><Model Name>->query
, но для этого требуется, чтобы код sql записывался в контроллер, который я не хочу. Я пытаюсь найти другой способ сделать это (например, find()
).