ROW_NUMBER() OVER (ORDER BY OrderConfirmTime DESC) 中, 如果OrderConfirmTime不唯一, 会造成分页中的数据重复问题.
如题, 真实的系统中有有多条数据有完全一致的OrderConfirmTime确认时间, 因此以此分出的页中, 第2页中出现的数据有可能还出现在第3页中.
查了一下才知道, 排序的列如果不能唯一确认行的顺序,就会造成这个问题。
解决办法也很简单, 后面再加一个订单编号作为最后一个排序字段,问题就解决了,如下: ROW_NUMBER() OVER (ORDER BY OrderConfirmTime DESC, OrderID ) AS RowNumber
作者:BobLiu
邮箱:lzd_ren@hotmail.com
出处:http://www.cnblogs.com/liuzhendong
本文版权归作者所有,欢迎转载,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
邮箱:lzd_ren@hotmail.com
出处:http://www.cnblogs.com/liuzhendong
本文版权归作者所有,欢迎转载,未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
浙公网安备 33010602011771号