天天看点

取一表前N条记录,各个数据库的不同SQL写法

从别处看到的,本人在用的是DB2,竟然都不一样……看来是不能说“会SQL,所有的数据库用起来都一样”了。

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

DB2

SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY

4. SQL SERVER

SELECT TOP N * FROM TABLE1

5. SYBASE

SELECT TOP N * FROM TABLE1

6. mysql:

select * from table_name limit N