为了账号安全,请及时绑定邮箱和手机立即绑定

mysql 如何分批 读取数据

mysql 如何分批 读取数据

PHP
回首忆惘然 2019-03-18 15:26:46
情景是数据库里有一系列的post(新闻类),现在想根据post表中有的post_date(时间),view(浏览数量),或者post_like表的likeCount进行排序,并分批读取数据,limit在25 比如说post_date: SELECT post.*, user.user_avatar, user.user_name, (SELECT COUNT(*) FROM comment WHERE comment.post_id = post.post_id) AS commentCount, (SELECT COUNT(*) FROM post_like WHERE post_like.post_id = post.post_id) AS likeCount FROM post, user where post.user_id=user.user_id and post.post_date < "2018-04-05 12:12:35" order by post.post_date desc limit 25 这里post_date可以抓取最后一条的post_date用来做下次获取的标记值。 但是问题是:如果我想通过view或者likeCount排序分批读取数据,获取的数据中没有可以用来做标记,拿来进行下次对比的标记值。 mysql语句如下: SELECT post.*, user.user_avatar, user.user_name, (SELECT COUNT(*) FROM comment WHERE comment.post_id = post.post_id) AS commentCount, (SELECT COUNT(*) FROM post_like WHERE post_like.post_id = post.post_id) AS likeCount FROM post, user where post.user_id=user.user_id order by likeCount desc limit 25 大家一般都是怎么解决的?谢谢
查看完整描述

3 回答

?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

列表的分页怎么实现的,这个就怎么实现。这个思路不会错

查看完整回答
反对 回复 2019-03-18
?
当年话下

TA贡献1890条经验 获得超9个赞

比如总共有110条数据,分页每页25条,那总共有5页。页面开始显示的是 select from post order by view desc limit 0,25获得的数据。页面上滑的时候加载第二页select from post order by view desc limit 25,25。加载更多的时候把limit第一个参数计算好应该就可以了。已经测试过了,是可以的。

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 1755 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信