關於數據庫檢索前幾條的小總結

今天同事突然問我mysql 怎麼刪除一定順序下的前十條。當時知道SQL Server好像是 select top x from .....但是記不太清楚了。於是上網google吧。唉,腦子就是不行啊
於是搜到如下結果:
MS SQL Server:

select top n * from TABLE_NAME

ORACLE:

select * from emp where rownum <= 5
這個測試過了,沒問題的。相信大家都有用過的

DB2

select * from tab_name where expression fetch first n rows only
呵呵,高手不少啊,n我就不解釋了。

SYBASE

Set RowCount 100 Select * From EveryOne
由於從來沒用過 SYBASE數據庫,這條語句也沒試過。有興趣的就測試一下。呵呵

MYSQL

SELECT * FROM MYTABLE
ORDER BY AFIELD
LIMIT offset, recnum
/**
其中offset爲從第幾條(offset+1)記錄開始,recnum爲返回的記錄條數
,其中offset爲可選參數,默認從第一條開始。例如:
SELECT * FROM MYTABLE
ORDER BY AFIELD
LIMIT 10// 前十條
SELECT * FROM MYTABLE
ORDER BY AFIELD
LIMIT 1, 5// 表示從第2條開始的五條記錄。用手指頭數了一下,好像是到6,也就是2-6.
**/


好了。其實可以網上搜搜的,這些小技巧還是有用的,記下來以後用。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章