查詢前幾條記錄在不同數據庫中的用法

1. ORACLE
SELECT * FROM TABLE1 WHERE ROWNUM<=N
2. INFORMIX
SELECT FIRST N * FROM TABLE1
3. DB2
SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<=N
或者
SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY
4. SQL SERVER
SELECT TOP N * FROM TABLE1
5. SYBASE
SET ROWCOUNT N
GO
SELECT * FROM TABLE1
6. MYSQL
SELECT * FROM TABLE1 LIMIT N
7. FOXPRO
SELECT * TOP N FROM TABLE ORDER BY COLUMN
 
雖然 select   *   from   table   where   rownum< 你要查的記錄條數,能夠取出前幾條記錄,但是你如果要把排序後記錄取前幾條結果就不對,如下 SQL 語句  
  select   *   from   table   where   rownum<50   order   by  
字段名   desc ,取出來的不時按照先排序後取前幾名,而是先取前幾名,再排序
   要實現先排序,再取前幾名用下面這條語句
select * from (select * from table order by 字段名 desc) where rownum<50
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章