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; #返回前5行 SELECT * 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 |