如何在一个没有主键的表中获取第n行数据,在sql2005中可以用row_number,但是必须指定排序列,否则你就不得不用select into来过渡到临时表并增加一个排序字段。
用游标的fetch absolute语句可以获取绝对行数下的某行数据,测试代码如下:
用游标的fetch absolute语句可以获取绝对行数下的某行数据,测试代码如下:
set nocount on --建立测试环境并插入数据,并且表没有主键 create table test(id int ,name varchar(10)) insert into test select 999,'jinjazz' insert into test select 888,'csdn' insert into test select 999,'sqlserver' --通过游标获取绝对行数 declare myCursor scroll cursor for select * from test open myCursor fetch absolute 3 from myCursor close myCursor deallocate myCursor --删除测试环境 drop table test set nocount off /*-- id name ----------- ---------- 999 sqlserver --*/
本文介绍了一种使用SQL Server 2005中的游标fetch absolute语句获取指定行数记录的方法,无需创建主键或使用row_number()函数,适用于没有主键的表。
970

被折叠的 条评论
为什么被折叠?



