SQL中显示查询结果的前几条记录
?
在使用數(shù)據(jù)庫查詢語句的過程中,我們經(jīng)常需要返回查詢結(jié)果的前幾條或者中間幾條數(shù)據(jù),下面是我總結(jié)的幾種數(shù)據(jù)庫常用的方法:(table是數(shù)據(jù)庫表名,table2是table表的別名)
1、SQLServer
sqlserver支持top關(guān)鍵字,返回前若干條數(shù)據(jù)。select top 5 * from table;// 返回前5行數(shù)據(jù)
2、MySQL
mysql支持limit,只能適用于mysql。limit子句用于強制select語句返回置頂?shù)挠涗洈?shù),接受一個或兩個數(shù)字參數(shù),必須是整數(shù)常量。一個參數(shù)是返回前幾條記錄;兩個參數(shù)時,第一個參數(shù)指定第一個返回記錄行的偏移量(初始記錄行的偏移量是0),第二個參數(shù)指定返回記錄的最大數(shù)目。
一個參數(shù):select * from table limit 10; //返回前10行記錄
兩個參數(shù):select * from table limit 5,10; //返回第6-15行的記錄
select * from table limit 5,-1; //返回第6行到最后一行的記錄?? (從某一個偏移量到記錄集的結(jié)束所有的記錄行,可以指定第二個參數(shù)為 -1)
select * from table limit 0,10 //返回前10行記錄,和limit10的結(jié)果一樣,即limit0,n=limit n
3、Oracle
Oracle需要使用rownum。select * from table where rownum<=5; //返回前5條數(shù)據(jù)
4、DB2
select * from table fetch first 5 rows only; //返回前5條數(shù)據(jù)
select * from (select 列名1,列名2,row_number() over() as a from table) as table2 ?where a>=5 and a<=10;//返回第5行到第10行的數(shù)據(jù)
---------------------
作者:shanshan1yi
來源:CSDN
原文:https://blog.csdn.net/shanshan1yi/article/details/61916271
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!
轉(zhuǎn)載于:https://www.cnblogs.com/wang992997290/p/10493810.html
總結(jié)
以上是生活随笔為你收集整理的SQL中显示查询结果的前几条记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java程序猿如何从码农晋升为架构师
- 下一篇: 查找学生信息