SQL中顯示查詢結果的前幾條記錄

在使用數據庫查詢語句的過程中,我們經常需要返回查詢結果的前幾條或者中間幾條數據,下面是我總結的幾種數據庫常用的方法:(table是數據庫表名,table2是table表的別名)

1、SQLServer

sqlserver支持top關鍵字,返回前若干條數據。select top 5 * from table;// 返回前5行數據

2、MySQL

mysql支持limit,只能適用於mysql。limit子句用於強制select語句返回置頂的記錄數,接受一個或兩個數字參數,必須是整數常量。一個參數是返回前幾條記錄;兩個參數時,第一個參數指定第一個返回記錄行的偏移量(初始記錄行的偏移量是0),第二個參數指定返回記錄的最大數目。

一個參數:select * from table limit 10; //返回前10行記錄

兩個參數:select * from table limit 5,10; //返回第6-15行的記錄

select * from table limit 5,-1; //返回第6行到最後一行的記錄   (從某一個偏移量到記錄集的結束所有的記錄行,可以指定第二個參數爲 -1

select * from table limit 0,10 //返回前10行記錄,和limit10的結果一樣,即limit0,n=limit n

3、Oracle

Oracle需要使用rownumselect * from table where rownum<=5; //返回前5條數據

4、DB2

select * from table fetch first 5 rows only; //返回前5條數據

select * from (select 列名1,列名2,row_number() over() as a from table) as table2  where a>=5 and a<=10;//返回第5行到第10行的數據


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章