laravel怎么执行完原生的sql之后 执行paginate等方法

业务需要,laravel本身的方法 很难拼接性能比较好的sql,所以需要使用原生的sql,但是又需要laravel原来的分页

如下我的sql是这样的:

SELECT  *
 FROM `user_familyer`
   INNER JOIN(
               SELECT `uid`
               FROM `user_sign`
               WHERE `doctoruid` IN (SELECT `doctoruid` FROM `doctor_user` WHERE `hospital_id`= 32693)
                     AND `type`= 0) AS `join_user` ON `user_familyer`.`anhao_uid`= join_user.uid
 WHERE `gender`= 1
       AND realname= '程文福'
UNION
  SELECT *
  FROM `user_familyer`
    INNER JOIN(
                SELECT `uid`
                FROM `user_sign`
                WHERE `doctoruid` IN(SELECT `doctoruid` FROM `doctor_user` WHERE `hospital_id`= 32693)
                      AND `type`= 1) AS `join_family` ON `user_familyer`.`fid`= join_family.uid
  WHERE `gender`= 1
        AND realname= '程文福'
ORDER BY `sort` DESC LIMIT 10 OFFSET 0;


在laravel中 我该如何去处理这条sql,然后才能使用到分页!

阅读 3.4k
1 个回答

先执行你的sql,
然后直接实例化 LengthAwarePaginator 这个类就可以.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题