關於分頁,SQLServer中的top、MySql中的limit、Oracle中的rownum的區別?

(1)在SQL Server中,我們使用 select top N * from tablename來查詢tablename表中前N條記錄。

(2)在MySQL中,我們使用select * from tablename limit M,N來實現相似的效果,其中M表示從第M+1條記錄開始,N表示返回N條記錄。如:從uses表中取出第四條到第六條這三條記錄,我們就可以這樣寫:   

1、select top 3 * from users where userID not in(select top 3 userID from users)   

2、select * from users limit 3,3(3)在Oracle中,我們使用select * from tablename where rownum < ?來實現相似的結果,其中,rownum必須從1開始,依次向下查找。另外,rownum不是數據中真實存在的列,而是僞劣,是對檢索出來的行進行排序,永遠從1開始, 所以,rownum>1 的選擇會不會有任何結果顯示。

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