您现在的位置是:首页
>
asp查询数据库数据 asp.net下经典数据库记录分页代码
a . et下经典数据库记录分页代码 SELECT TOP PAGESIZE NEWSTITLE FORM NEWSINFO WHERE NEWSID NOT IN (SELECT TOP (PAGE
asp.net下经典数据库记录分页代码

SELECT TOP PAGESIZE NEWSTITLE FORM NEWSINFO WHERE NEWSID NOT IN (SELECT TOP (PAGE )* PAGESIZE NEWSID FROM NEWSINFO WHERE Auditing= and NEWSBREED= 企业新闻 order by NEWSID DESC) AND Auditing= and NEWSBREED= 企业新闻 order by NEWSID DESC 其中 PAGE表示当前页数 PAGESIZE表示页的大小 这里利用了NOT IN 不复合SARG 但总比一次读取全部的记录要好的多 符合 SARG的代码 针对本人的实例还有一个更好的方案 因为NEWSID字段是自增字段 对于NOT IN 语句进行如下的改造 并不影响结果 但速度提高了很多 SELECT TOP PAGESIZE NEWSTITLE FORM NEWSINFO WHERE NEWSID < (SELECT MIN(NEWSID) FROM (SELECT TOP (PAGE ) * PAGESIZE NEWSID FROM NEWSINFO WHERE Auditing= and NEWSBREED= 企业新闻 order by NEWSID DESC) AS TB)AND Auditing= and NEWSBREED= 企业新闻 order by NEWSID DESC 【说明】 对于在多处使用分页功能的web 应用程序 把SQL语句改为存储过程将会更好 请大家积极参与讨论分页的算法 并把好的方案与大家分享 lishixinzhi/Article/program/net/201311/12887
很赞哦! (1049)