fhqllt 发表于 2013-1-13 18:47:37

各种数据库 取出指定条数记录

http://www.diybl.com/course/7_databases/database_other/2007106/77032.html

1. ORACLE
SELECT * FROM TABLE1 WHERE ROWNUM<=N

2. MYSQL
SELECT * FROM TABLE1 LIMIT N


3. INFORMIX
SELECT FIRST N * FROM TABLE1
4. DB2
SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<=N
或者
SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY
5. SQL SERVER
SELECT TOP N * FROM TABLE1
6. SYBASE
SET ROWCOUNT N
GO
SELECT * FROM TABLE1
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

文章出处:http://www.diybl.com/course/7_databases/database_other/2007106/77032.html
页: [1]
查看完整版本: 各种数据库 取出指定条数记录