标签:分页sql

分页的SQL一定要加上主键排序

发表于3年前(Dec 24, 2014 10:37:00 AM)  阅读 364  评论 0

分类: Java 数据库

标签: 分页sql 数据重复

换了一家新公司,做电商的,前两天经理交代一个任务,处理客户反馈的一个问题,问题很简单,是产品分页的时候,发现有两页竟然出现了同一个商品,我开始查代码。

系统数据持久层采用的是mybatis,之前没用过,听说过,一直用的hibernate。这里说句题外话,个人感觉hibernate还是好用点,hibernate配置要稍微简单点,配置映射关系就行,不需要写复杂sql,mybatis就要把sql写出来,写出来当然就麻烦点,我就看了我们系统里面的sql,一堆if,非常复杂,当然复杂的sql也有自身优势,实现的功能就更加灵活一点,有时使用hibernate碰到很复杂的裸机就发现无法配置,不过通常这时候我们会直接换成用jdbc直接查询,也不影响。耐着性子看了下sql,里面排序条件很多,都是根据商品价格,销量啊什么的,我把查询sql在后台打印出来,因为我不能直接连接正式库,我把sql稍微改了一下,一次查了10页的数据,发给现场人员让他帮忙把结果导出来。为什么一次查10页,当时是怕麻烦人家。导出的表格发现依然没有重复数据(之前已经查过产品表,没有录入重复数据)。我盯着那句sq

......