Mysql,elasticsearch 等 按时间排序中的坑

本文探讨了在使用Elasticsearch进行时间排序分页查询时遇到的问题——重复数据现象,并提供了解决方案:通过增加ID作为排序依据确保数据唯一性。

上图(图片是借用别人的,只是为了说明问题),我的问题是出现在elasticsearch,修正后想到数据库是不是也会有这样的问题

174522_ZzfV_2361414.png

174522_QLHz_2361414.png

两次查询都是按照时间排序,但是分页查询后,第二页出现了第一页的数据,经查找,发现相同时间的数据在排序的时候,顺序不是一定的,就像是同样是并列第一,谁在前。谁在后都一样,但是分页的时候,这个问题就是个坑了。。。。

/(ㄒoㄒ)/~~

所以,笔者排序时加上了Id,这样时间相同时,Id是不同的,所以顺序是一致的,这样查询的数据就不会重复了。


结论:排序分页查询一定要确定数据的顺序不变,最好的方法就是排序列加上数据唯一的列!!!

转载于:https://my.oschina.net/jiangzhixiong/blog/597018

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值