Oracle、Mysql、SQLServer中指定查询结果中返回的行数
sqlserver:
sqlserver固然是最简单的,只需利用top语句。
例 : select
top 10 * from table1 //返回前10条记录;
select distinct top 10 * from table //返回前10条记录 不带重复数据
基本语法:select [top n[percent][with ties]] select_list from
table_name
n:代表查询结果的前n行。
percent:如果使用了这个关键字,就代表查询结果就是前百分之n行。
with ties:该关键字只能用于使用了order by子句的查询。
oracle:rownum
例:select * from table rownum <
10 //取前10条记录
mysql:
mysql语法就有所不同了,需要用到limit关键字。
例如:
select * from table limit 5,10; // 检索记录行 6-15 ,注意,10为偏移量
如果只给定一个参数,它表示返回最大的记录行数目:
select * from table limit 5; //检索前 5 个记录行 //也就是说,limit n 等价于
limit 0,n。
基本语法:select * from table limit [offset,] rows | rows offset
offset
limit 子句可以被用于强制 select 语句返回指定的记录数。limit
接受一个或两个数字参数。参数必须是一个 整数常量。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
初始记录行的偏移量是 0(而不是 1): 为了与 postgresql 兼容,mysql 也支持句法: limit #
offset #。