不用游标,没有自增列id,如何获取.,数据集中行N-行N之间的数据行?

zhangzhi009 2008-06-14 10:19:10
不用游标,没有自增列id,如何获取.,数据集中行N-行N之间的那些数据行?
...全文
102 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
-晴天 2008-06-14
在VFP里倒是很简单,操作表的时候可以有个recno()函数.
回复
zhangzhi009 2008-06-14
嘿嘿,经过楼上这么一提醒,我大误了,就用临时表自增列了,我是在写个复杂的分页存储过程
回复
pt1314917 2008-06-14
顶楼上,按照楼主那数据,如果不借助临时表生成自增id,
用SQL2000或者2005都做不了。。。
回复
hery2002 2008-06-14
[Quote=引用 6 楼 zhangzhi009 的回复:]
引用 2 楼 hery2002 的回复:
2005 row_number()
2000 的话,按照order by的产出count值即可,.


可否说的具体点--------------2000 的话,按照order by的产出count值即可,.

我的记录如下,我要取得行2-行5位置的几条记录.并且位置不能部排序打乱了

number
==================
1
----------
2
----------
5
----------
1
----------
6
----------
3
----------
4
----------
2
[/Quote]
....
这种数据,没有可参考的比较,貌似不用临时表自增列比较难做,
回复
zhangzhi009 2008-06-14
[Quote=引用 2 楼 hery2002 的回复:]
2005 row_number()
2000 的话,按照order by的产出count值即可,.
[/Quote]

可否说的具体点--------------2000 的话,按照order by的产出count值即可,.

我的记录如下,我要取得行2-行5位置的几条记录.并且位置不能部排序打乱了

number
==================
1
----------
2
----------
5
----------
1
----------
6
----------
3
----------
4
----------
2
回复
懒牛科技 2008-06-14
select row_number() over ( id order by desc) as id ,* from  table 
where id between N and N+M
回复
-晴天 2008-06-14
[Quote=引用 1 楼 zhangzhi009 的回复:]
还有就是如何设置游标,一次游走3条记录呢就是游标每次跳3行不是1行,就像1,4,7,10
[/Quote]
设置游标为可滚动游标:
DECLARE cursor1 CURSOR SCROLL
就可以直接指定跳动行数.用相对值:
FETCH ABSOLUTE 3 FROM cursor1 INTO @a...
回复
-晴天 2008-06-14
在查询分析器中执行:
select * from table
打开数据后,找到第N1行,按下鼠标,拖动到N2,选中,然后按CTRL+C
OK?
回复
hery2002 2008-06-14
2005 row_number()
2000 的话,按照order by的产出count值即可,.
回复
zhangzhi009 2008-06-14
还有就是如何设置游标,一次游走3条记录呢就是游标每次跳3行不是1行,就像1,4,7,10
回复
相关推荐
发帖
MS-SQL Server
创建于2007-09-28

3.3w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
帖子事件
创建了帖子
2008-06-14 10:19
社区公告
暂无公告