六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 76|回复: 0

查询前几条记录在不同数据库中的用法

[复制链接]

升级  66.67%

40

主题

40

主题

40

主题

秀才

Rank: 2

积分
150
 楼主| 发表于 2013-1-13 18:54:04 | 显示全部楼层 |阅读模式
查询前几条记录在不同数据库中的用法

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
或者
SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY
4. SQL SERVER
SELECT TOP N * FROM TABLE1
5. SYBASE
SET ROWCOUNT N
GO
SELECT * FROM TABLE1
6. MYSQL
SELECT * FROM TABLE1 LIMIT N
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
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表