case when 引发的分页数据重复问题

  • 需求:
    • 按当前城市登录人所在城市为第一优先级排序,其他城市随机排序,相同城市排在一块
      在这里插入图片描述
  • 起初采用case when 来提高当前城市的优先级来解决排序问题.
case when cityid=当前城市 then 100 else 1
  • 但是,在测试的过程中发现第二页数据中会与前一页中的的数据重复(数据量小).
  • 出现这个场景的原因是当前城市的数据查询完了,没有限制唯一的条件.导致数据随机查询
  • 想了想,加个主键排序吧.
order by id asc
  • 又测试了下,发现重复数据是解决了,但是除了当前城市,其他的城市的排序是按照id升序的,发现这不是我想要的效果,需要在同一城市排在一块,这个时候在id排序前加入城市排序即可
order by cityid asc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值