distinct与paginate的冲突

在tp5中,用sql查询出来的数据,若有重复,用distinct不愧为一种简洁的方式。但,distinct与paginate是有冲突的。具体表现在:paginate会无视distinct的作用,按照原来搜索出的结果进行分页。

paginate&&distinct.JPG

解决方法是:在paginate的第二个参数中传入总数。代码如下:

      $count  = $portalPostModel->alias('a')->field($field)
            ->join($join)
            ->join($join_event_hall)
            ->join($join_hall)
            ->join($join_center)
            ->where($where)
            ->distinct(true)
            ->order($condition)
            ->select();
        $articles        = $portalPostModel->alias('a')->field($field)
            ->join($join)
            ->join($join_event_hall)
            ->join($join_hall)
            ->join($join_center)
            ->where($where)
            ->distinct(true)
            ->order($condition)
            ->paginate(10, count($count));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容