日期:2014-05-16  浏览次数:20396 次

数据库取前几条记录的语句
1. ORACLE
SELECT * FROM TABLE1 WHERE ROWNUM<=N
2. INFORMIX
SELECT FIRST N * FROM TABLE1 where 1=1
3. 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
4. SQL SERVER
SELECT TOP N * FROM TABLE1 where 1=1
or
SET ROWCOUNT N SELECT * FROM TABLE1 where 1=1 SET ROWCOUNT N1
5. SYBASE
SET ROWCOUNT N SELECT * FROM TABLE1 where 1=1 SET ROWCOUNT N1
6. MYSQL
SELECT * FROM TABLE1 where 1=1 LIMIT N
7. FOXPRO
SELECT * TOP N FROM TABLE ORDER BY COLUMN
8. ACCESS
SELECT TOP N * FROM TABLE1 where 1=1
?

查询每组的前几条数据

?

SELECT s1.*
FROM   STUDENT AS s1
WHERE  (SELECT COUNT(1)
        FROM   STUDENT AS s2
        WHERE  s2.Score >= s1.Score
               AND s2.Class = s1.Class) <= 10
ORDER  BY Class,
          Score DESC 
?

?

?

?