mysql/Oracle/mssql取前几条数据sql写法
如在ms sqlserver 用此语句:
代码如下 | 复制代码 |
select top 2 * from test01 |
Oracle的语句:
代码如下 | 复制代码 |
select * from (select rownum r ,* from test) ttwhere tt.r > 50 and tt.r <= 100; |
(最好用PLSQL游标来解决)
DB2中:
代码如下 | 复制代码 |
select * from payment fetch first 5 row only --查前5条记录 |
MSSQL
如在ms sqlserver 用此语句:
代码如下 | 复制代码 |
select top 2 * from test01 |
就会只显示前2条记录,
MYSQL 使用limit就可以了.
代码如下 | 复制代码 |
select * from your_table where .... limit 2; |
msssql一个实例
1. 使用MS SQL Server 2008;
2. 数据库内容如下:张三 数学 98李四 数学 95王五 数学 90赵六 英语 100张三 英语 99李四 英语 69
3. 要查询的结果:每一门课程的前2名
代码如下 | 复制代码 |
select a.xingming,a.kemu,a.fenshu from xuexi a where a.fenshu in (SELECT top 2 fenshu FROM xuexi WHERE xingming = a.xingming and kemu=a.kemu order by fenshu desc) |
补充:数据库,Oracle教程