为用户提供最大数量的帖子Phalcon

时间:2016-12-06 11:55:12

标签: php mysql database phalcon phalcon-orm

我是PHP和Web框架Phalcon的新手。我已经尝试了很多,但没有找到答案。我尝试使用它的ORM,但不了解如何生成查询。

这是我在SQL中的查询:

SELECT username, count(*) maximum FROM user
    INNER JOIN post ON post.user_id = user.id
GROUP BY user.id
ORDER BY maximum DESC
LIMIT 15

请使用Phalcon ORM帮助生成查询。感谢您的回复:)

2 个答案:

答案 0 :(得分:2)

根据@Juri的回答,我这样做了:

$result = User::query()
    ->columns('username, COUNT(post.id) as maximum')
    ->innerJoin('Post', 'post.user_id = User.id', 'post')
    ->groupBy('User.id')
    ->orderBy('maximum DESC')
    ->limit(15)
    ->execute();

我不知道它是否正确。但无论如何它对我有用。感谢帮助。附:也许它对某人也有帮助:))

答案 1 :(得分:0)

$result = $modelsManager->createBuilder()
->columns('username,COUNT(post.id) as maximum')
->from(['user' => '<user class here>'])
->innerJoin('<post class here>', 'post.userId = user.id', 'post')
->groupBy('user.id')
->orderBy('maximum DESC')
->limit(15)
->getQuery()
->execute();