首页 文章

cakephp以id的顺序查找member_id组中的所有记录

提问于
浏览
-2

我想要一个蛋糕php查找查询按照id desc的顺序查找注释表中的所有记录,但所有注释应该在member_id组中 .

假设有两个成员身份证号为20和21,最后一个成员是身份证号为21的成员 . 两位成员都在不同时间发布了多条评论 .

所以现在我想要所有最新的评论 . 表示如果最新评论由身份证号为21的会员发布,则显示身份证号为21的会员的所有评论,然后显示其他人的所有评论,依此类推 .

我在member_id上试过了group,但它只为一个成员提供了单个记录 .

id  Member_id   comment
1   20           abc
2   21           abc
3   20           abc
4   20           abc
5   21           abc

id  Member_id   comment
5   21           Abc
2   21           Abc
4   20           Abc
3   20           abc
1   20           abc

它是我在 table 上的记录,我想在下面

我想要一个蛋糕php查找查询按照id desc的顺序查找注释表中的所有记录,但所有注释应该在member_id组中 .

假设有两个成员身份证号为20和21,最后一个成员是身份证号为21的成员 . 两位成员都在不同时间发布了多条评论 .

所以现在我想要所有最新的评论 . 表示如果最新评论由身份证号为21的会员发布,则显示身份证号为21的会员的所有评论,然后显示其他人的所有评论,依此类推 .

我在member_id上试过了group,但它只为一个成员提供了单个记录 .

它是我在 table 上的记录,我想在下面

这里的最后一条评论是由成员21所以它将显示该成员的所有数据,然后是成员20,依此类推

谢谢

这里的最后一条评论是由成员21所以它将显示该成员的所有数据,然后是成员20,依此类推

谢谢

1 回答

  • 0

    我不相信这可以通过一个单一查询轻松完成(这将简单地转换为 find ) . 我会使用两个步骤:

    • 获取最新评论的member_id

    • 查询基于该值排序的所有注释 .

    假设这是从Comment模型中编写的:

    $lastCreated = $this->find('first', array(
            'order' => array('Comment.id' => 'desc')
        ));
    
    $results = $this->find('all', array(
            'order' => array('Comment.member_id = ' . $lastCreated['Comment']['member_id']. ' desc'
                        ,'Comment.id' => 'desc')
        ));
    

    第二个find语句的目标是有一个SQL语句,例如:

    SELECT * 
    FROM comments AS Comment
    ORDER BY Comment.member_id = 21 desc
            ,Comment.id desc;
    

相关问题