【问题标题】:kohana orm top userkohana orm 顶级用户
【发布时间】:2012-03-08 18:40:02
【问题描述】:

我有两张桌子

用户和cmets

cmets 与用户是多对一的关系

想办法使用 ORM 根据 cmets 的数量获得顶级用户

有什么建议吗?

【问题讨论】:

    标签: php kohana kohana-orm


    【解决方案1】:

    您的查询应如下所示:

    SELECT users.username, COUNT(comments.id) AS total 
    FROM users 
    INNER JOIN comments 
    ON users.id = comments.user_id 
    GROUP BY users.username 
    ORDER BY COUNT(comments.id) DESC
    

    翻译成ORM:

    ORM::factory('user')
       ->select('user.username', array('COUNT("comments.id")', 'total'))
       ->join('comments', 'INNER')
       ->on('user.id', '=', 'comments.user_id')
       ->group_by('user.username')
       ->order_by('total', 'DESC')
       ->find_all();
    

    【讨论】:

    • 非常感谢,你太棒了
    • 刚查了一下,这不就是有cmet的回访用户吗?例如。如果用户的 cmets 为零,它就不会成为记录集的一部分?
    猜你喜欢
    • 2013-09-28
    • 2011-05-09
    • 1970-01-01
    • 1970-01-01
    • 2012-12-11
    • 2011-10-23
    • 2012-11-10
    • 1970-01-01
    相关资源
    最近更新 更多