摘要:
在SQLServer中,`ROW_NUMBER`的分页应该是最高效的了,而且兼容SQLServer2005以后的数据库,可以通过“欺骗”查询引擎的小技巧,可以控制查询引擎部分的优化过程。
ROW_NUMBER`分页在大页数时存在性能问题,可以通过一些小技巧进行规避:1)尽量通过cte利用索引。2)把不参与`where`条件的表放到分页的cte外面。3)如果参与`where`条件的表过多,可以考虑把不参与分页的表先做一个临时表,减少IO;inner join`会优先于子查询,而`left join`不会;使用`with(forceseek)`可以强制查询因此进行索引查询 阅读全文
posted @ 2015-01-05 23:06
马非码
阅读(33234)
评论(66)
推荐(173)
浙公网安备 33010602011771号