SQL之查詢某幾行記錄 分頁查詢

2021-07-04 17:01:36 字數 1290 閱讀 7412

oracle:

1、查詢前10行:select * from sc_objects where rownum <=10

2、利用minus

查詢10到20行:select * from sc_objects where rownum <=20 minus select * from sc_objects where rownum <=10;

查詢20行之後:select * from sc_objects minus select * from sc_objects where rownum <=20;

3、常用於

分頁查詢:

pagesize:每頁顯示的記錄數

currentpage:當前頁號

資料表的名字是:components

索引主鍵字是:id

select * from components where id not in(select id from components where rownum<=(pagesize*(currentpage-1))) and rownum<=pagesize order by id;

如下例:

select * from sc_objects where id not in(select id from sc_objects where rownum<=100) and rownum<=10 order by id;

4、一種是利用oracle的rownum,這個是oracle查詢自動返回的序號,一般不顯示,但是可以通過select rownum from [表名],可以看到,是從1到當前的記錄總數。

select * from (select rownum tid,components.* from components where rownum<=100) where tid<=10;

mysql和sqlite:

查詢n+1到m行: select * from tadd order by id limit n,m;

示例:select * from tadd order by id limit 4 offset 2;

select * from tadd order by id limit 2,4;

sqlserver:

select top 5 * from sc_objects where id not in(select top(當前頁-1)*5) id from sc_objects;

引申between and 的用法



mysql查詢第幾行到第幾行記錄

1 查詢第一行記錄 select from table limit 1 2 查詢第n行到第m行記錄 select from table1 limit n 1,m n select from table limit 5,10 返回第6行到第15行的記錄 select from employee lim...

SQL分頁查詢

分頁sql查詢在程式設計的應用很多,主要有儲存過程分頁和sql分頁兩種,我比較喜歡用sql分頁,主要是很方便。為了提高查詢效率,應在排序欄位上加索引。sql分頁查詢的原理很簡單,比如你要查100條資料中的30 40條,你先查詢出前40條,再把這30條倒序,再查出這倒序後的前十條,最後把這十條倒序就是...

sql分頁查詢

declare id int declare moverecords int declare currentpage int declare pagesize int set currentpage 300 set pagesize 100 currentpage和 pagesize是傳入引數 se...