准备工作,建立测试表:Article_Detail,主要是用来存放一些文章信息,测试的时间,都是从网易上面转载的新闻,同时,测试表数据字段类型是比较均匀的,为了更好的测试,表结构如下图:
内容:
数据量:129,991 条记录
语法分析
1. NTILE() 的分页方法
NTILE() 方法可以用来分页,但是应用场景十分的狭窄,并且性能差劲,和 Row_Number() 与 offset fetch 分页比起来没有任何优势,也只有在只读表上面分页的话,还是比较合适的;虽然不好用,但是还能来分页的,所以只简单的介绍下。
语法:
NTILE (integer_expression) OVER ( [ <partition_by_clause> ] < order_by_clause > )
将有序分区中的行分发到指定数目的组中。 各个组有编号,编号从一开始。 对于每一个行,NTILE 将返回此行所属的组的编号。
测试中用到的 Sql 语句 :
数据量:129,991 条记录
语法分析
1. NTILE() 的分页方法
NTILE() 方法可以用来分页,但是应用场景十分的狭窄,并且性能差劲,和 Row_Number() 与 offset fetch 分页比起来没有任何优势,也只有在只读表上面分页的话,还是比较合适的;虽然不好用,但是还能来分页的,所以只简单的介绍下。
语法:
NTILE (integer_expression) OVER ( [ <partition_by_clause> ] < order_by_clause > )
将有序分区中的行分发到指定数目的组中。 各个组有编号,编号从一开始。 对于每一个行,NTILE 将返回此行所属的组的编号。
测试中用到的 Sql 语句 :
代码如下:
查看更多关于SqlServer2012分页方法分析(offsetandfetch)的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did33439
阅读:55次
上一篇: SQLserver高级应用收藏版