查詢資料庫中的第10到20條記錄

2021-04-19 10:55:28 字數 555 閱讀 3276

先給出一條錯誤的方法

select * from table where rownum<=20 and rownum>=10;

這種方式是不正確的

rownum是偽列只能用(<,<=,!=)不能用(>,>=,=,between...and..)

這裡的不能用,不是指使用了會產生語法錯誤,

而是查詢後不能返回結果,或者返回的結果不知所云

1.select * from table where rownum<=20

minus

select * from table where rownum<10

先將前20列的資料取得,這裡使用minus將20列資料中的前9條資料去掉

就獲得了第10-20條資料

select * from (select table.*,rownum r from table) where r between 10 and 20;

既然rownum不能使用(>,>=,=,between...and..),就將rownum取出來賦給乙個變數

此時,變數就可以做rownum不可以做的操作了

查詢表中第10條至20條的記錄

canby 22 49 51 select top 10 from tables where id select max id from select top 9 id from tables order by id as a order by id canby 22 50 34 有錯漏的改一下,大...

獲取前10條和第10到20條資料sql

oracle rownum是把sql出來的結果進行編號,始終從1開始,常見的用途就是用來分頁輸出。select from ts user where rownum 11 select from select from ts user order by id desc where rownum 10 ...

取出表A中第31到第40記錄 資料庫

寫出一條sql語句 取出表a中第31到第40記錄 sqlserver,以自動增長的id作為主鍵,注意 id可能不是連續的 a.select top 10 from a where id not in select top 30 id from a 演變步驟 1 select top 30 id fr...