0

我是 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 生成查询。感谢您的任何回复:)

4

2 回答 2

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();

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

于 2016-12-06T13:03:24.347 回答
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();
于 2016-12-06T12:15:48.167 回答