MS SqlServer查询分页怎么作?

binglex 2004-07-09 11:00:07
mysql实现起来很简单,只要在查询语句的最后加上limit [start,]count 就可以了。
但用MS SqlServer就郁闷了,好不容易有个top,但只能限制条数,不能限制起始位置;难到我有100000条数据,我要看最后100条,也要都读出来,程序自己处理?MS SqlServer不熟悉,麻烦大家了:)

有什么简单方便的方法吗,
...全文
193 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
binglex 2004-07-10
  • 打赏
  • 举报
回复
最后发现这种方法还可以,只有先用着了

SELECT TOP 100 *
FROM (SELECT TOP 400 *
FROM syscolumns
ORDER BY name DESC) syscolumns
ORDER BY name

fanfyj 2004-07-09
  • 打赏
  • 举报
回复
up
binglex 2004-07-09
  • 打赏
  • 举报
回复
从http://community.csdn.net/Expert/topic/3122/3122928.xml?temp=.2710535 还看到这种方法:

找到一个字段用来排序,
select top 10 from
(select top 100 * from T order by f) T1
order by f desc
该方法比较巧妙,对于排序的情况很实用
binglex 2004-07-09
  • 打赏
  • 举报
回复
方法:select top 10 * from 表 where 主键 not in(select top (21-1) 主键 from 表)
应该比下面的方法慢把。因为前者要比较的是集合,后边这种减法不大清楚是怎么实现的。
select top 100 * from table
minus
select top 90 * from table
Kudeet 2004-07-09
  • 打赏
  • 举报
回复
minus是关键字,不相信可以查书的
Kudeet 2004-07-09
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/3122/3122928.xml?temp=.2710535
binglex 2004-07-09
  • 打赏
  • 举报
回复
laiyiling:这样就行啦?不知道效率是相当于select 190条还是10条,去试一下
mooninglover 2004-07-09
  • 打赏
  • 举报
回复
我也很关注这个问题

to laiyiling(最熟悉的陌生人)
sql语句可以相减吗?
我刚在sqlserver查询分析器里试了一下,为什么得到了两个数据集,分别取出了前100条和前90条?minus是关键字吗?

to binglex (bingle)
从x开始取y条记录
select top y * from 表 where 主键 not in(select top (x-1) 主键 from 表)
例如取第21-30条
select top 10 * from 表 where 主键 not in(select top (21-1) 主键 from 表)
这种方法可以用,但是数据量很大时候,就会很慢:(

关注中~~~~~~
Kudeet 2004-07-09
  • 打赏
  • 举报
回复
你用两个top相减就是
举个例子:
select top 100 * from table
minus
select top 90 * from table

这样得到就是最后10条记录
cctv555 2004-07-09
  • 打赏
  • 举报
回复
回复人: laiyiling(最熟悉的陌生人) ( ) 信誉:148 2004-07-09 12:25:00 得分: 0


minus是关键字,不相信可以查书的

————————————————————————————————————————

SQL Server没有minus,请先搞清楚。

执行:
select top 100 * from table
minus
select top 90 * from table

等于

select top 100 * from table
asdf
select top 90 * from table

minus在这里是一个无意义的标示符.

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧