SQL查询语句怎样限定返回结果集的行数

 我来答
freechan10
2019-11-15 · TA获得超过2.9万个赞
知道小有建树答主
回答量:263
采纳率:68%
帮助的人:12.4万
展开全部

1、创建测试表,create table test_rows(id number, value varchar(200));

2、插入测试数据,

insert into test_rows

select level, 'val_'||level from dual 

connect by level<1000;

commit;

3、查询表中记录数,总共有999条,

4、编写sql,返回最小的10条记录,

select * from (select t.*, row_number() over(order by id) rn from test_rows t ) where rn=10;

节子不哭
2017-08-01 · TA获得超过460个赞
知道小有建树答主
回答量:340
采纳率:85%
帮助的人:162万
展开全部
每种数据库都有方法,Oracle在查询结果可以限定rownum<= 某个数,来限定输出,SQL Server更加简单,操作方法有下面两种
rowcount的作用就是用来限定后面的sql在返回指定的行数之后便停止处理,比如下面的示例,
set rowcount 10
select * from 表A

这样的查询只会返回表A中的前10条数据。它和 "select top 10 * from 表A" 的作用一样。注意一点,set rowcount 的设置会在整个会话中有效。比如下面的sql示例:

set rowcount 10
select * from 表A
go
select * from 表B
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式