设为首页 加入收藏

TOP

Sql 2012 OFFSET / FETCH NEXT BUG
2015-11-21 01:33:37 来源: 作者: 【 】 浏览:0
Tags:Sql 2012 OFFSET FETCH NEXT BUG
上个星期,测试发现了一个分页的bug--- 无论怎么分页数据的一样。我们所有的分页都是用EF 分页,为什么只有一个模块的分页有问题呢?
?
后来跟了下sql语句,发现用到是sql2012的新分页方式 OFFSET/FETCH NEXT。?
?
下面有两段sql语句 ,数据中Create_Date 的值都一样
DECLARE   @FetchRows tinyint = 8;
SELECT * FROM BnC_Store ORDER BY Created_Date ASC     OFFSET 0 ROWS     FETCH NEXT @FetchRows ROWS ONLY;
SELECT * FROM BnC_Store ORDER BY Created_Date ASC     OFFSET 8 ROWS     FETCH NEXT @FetchRows ROWS ONLY;
SELECT * FROM BnC_Store ORDER BY Created_Date ASC     OFFSET 16 ROWS    FETCH NEXT @FetchRows ROWS ONLY;
分页是正常的。 
select * from BnC_Store order by Created_Date asc OFFSET 0 ROWS FETCH NEXT 8 ROWS ONLY;
select * from BnC_Store order by Created_Date asc OFFSET 8 ROWS FETCH NEXT 8 ROWS ONLY;
select * from BnC_Store order by Created_Date asc OFFSET 16 ROWS FETCH NEXT 8 ROWS ONLY;
第二,三个分页的数据和第一个分页的前5条数据是一样的。分页不正常。 
?
如果我们换成 order by store_Number ,两段sql语句的分页都是正常的。
?
所有我个人认为这算是微软 sql2012 的bug。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇了解NoSQL 下一篇打开pl/sqldeveloper出现NLS_LANG..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: