seo网站建设 厦门网站空间怎么做
seo网站建设 厦门,网站空间怎么做,怎样做外贸网站建设,如何制作课程网站项目中有使用到MongoDB#xff0c;由于比较高频查询与写入#xff0c;出现了每次查询的结果集都会变的问题。
描述
我使用的是skiplimit的分页方式,模拟mysql的 limit 0,10去分页 由于出现了结果集变化的问题#xff0c;我想着使用排序去固定返回的结果集#xff0c;结果…项目中有使用到MongoDB由于比较高频查询与写入出现了每次查询的结果集都会变的问题。
描述
我使用的是skiplimit的分页方式,模拟mysql的 limit 0,10去分页 由于出现了结果集变化的问题我想着使用排序去固定返回的结果集结果依旧不能如愿。究其原因是因为我的语句顺序问题
//这个aggregating用来分页Aggregation pageAggregation Aggregation.newAggregation(//查询的字段projectionOperation,//条件Aggregation.match(criteria),Aggregation.group(deviceCode).sum(deviceUseDuration).as(useDuration).count().as(useNumber).last(deviceCode).as(deviceCode),Aggregation.skip((long) pageNum * pageSize),Aggregation.sort(Sort.Direction.ASC,deviceCode),Aggregation.limit(pageSize));sort()根据deviceCode进行排序由skip与limit进行分页。 结果sort只能排序当页的数据原因是sort在skip后面skip的作用是跳过指定行先跳过后排序那么结果肯定不尽人意。
需要将sort放在skiplimit之前。
//这个aggregating用来分页Aggregation.sort(Sort.Direction.ASC,deviceCode),Aggregation.skip((long) pageNum * pageSize),Aggregation.limit(pageSize)mongodb的排序分页是按照流形式去处理数据的如果是先分页再排序会导致数据只取前10条然后在这10条数据里面排序也就对应前端的效果是排序只对当前页面有效。包括如果使用了统计的方法如果分页方法在此之前也会导致先分页在排序的情况出现。因为如果使用了流分页也会同步使用尽量在使用流处理之前不分页。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/91586.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!