8种数据库select前N条记录的方法

1. ORACLE

SELECT * FROM TABLE1 WHERE ROWNUM<=N

2. INFORMIX

SELECT FIRST N * FROM TABLE1 WHERE 1=1

3. MYSQL

SELECT * FROM TABLE1 WHERE 1=1 LIMIT N

LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数,
第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行
数。例如:

SELECT * FROM TABLE LIMIT 5,10; #返回第6-15行数据
SELECT * FROM TABLE LIMIT 5; #返回前5SELECT * FROM TABLE LIMIT 0,5; #返回前5

4. DB2

SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<=N

或者

SELECT COLUMN FROM TABLE WHERE 1=1 FETCH FIRST N ROWS ONLY

5. SQL SERVER

SELECT TOP N * FROM TABLE1 WHERE 1=1

或者

SET ROWCOUNT N SELECT * FROM TABLE1 WHERE 1=1 SET ROWCOUNT N1

6. SYBASE

SET ROWCOUNT N SELECT * FROM TABLE1 WHERE 1=1 SET ROWCOUNT N1

7. FOXPRO

SELECT * TOP N FROM TABLE ORDER BY COLUMN

8. ACCESS

SELECT TOP N * FROM TABLE1 WHERE 1=1

Leave a Comment.