当前位置:操作系统 > Unix/Linux >>

数据库分页简析

数据库分页简析
 
SQL Server 
        从数据库表中的第M条记录开始取N条记录,利用Top关键字:注意如果Select语句中既有top,又有order by,则是从排序好的结果集中选择: 
        SELECT * 
        FROM   ( SELECT Top N * 
                          FROM   (SELECT Top (M + N - 1) * FROM 表名称 Order by 主键 desc) t1 ) t2 
       Order by 主键 asc 
 
         例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下: 
         SELECT * 
         FROM ( SELECT TOP 20 * 
                         FROM (SELECT TOP 29 * FROM Sys_option order by sys_id desc) t1) t2 
         Order by sys_id asc 
 
Oralce数据库   www.zzzyk.com  
        从数据库表中第M条记录开始检索N条记录:使用oracle特殊属性 where rownum between ? and ? 
         SELECT * 
         FROM (SELECT ROWNUM r,t1.* From 表名称 t1 where rownum < M + N) t2 
         where t2.r >= M 
         例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下: 
        SELECT * 
         FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2 
          Where t2.R >= 10 
 
My sql数据库 
        My sql数据库最简单,是利用mysql的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为: 
         SELECT * FROM 表名称 LIMIT M,N 
 
          例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下: 
         select * from sys_option limit 10,20

 
 
作者 My_de_Dream
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,