如何取出表中的某个特定的行?

voice007 2007-05-04 09:24:51
如何取出
select top 5 * from article order by AddTime desc
中的第二行数据?
...全文
153 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
voice007 2007-05-05
  • 打赏
  • 举报
回复
谢谢大家。
ivan_gz 2007-05-04
  • 打赏
  • 举报
回复
这个很简单,用游标就行了。
你可以查一下sql server的帮助文档,里面有好多例子。

大概思路是:
先定义个游标,然后用一个循环读出被游标指向的数据。至于读第几行,你可以在循环里操作。
AspxGrasp 2007-05-04
  • 打赏
  • 举报
回复
笨办法,用3个TOP来取,嘿嘿
第一个取top5,第二个反过来取top3,第三个取top1就OK了..
bingchener 2007-05-04
  • 打赏
  • 举报
回复
自己定义个标识,也就是所谓的行号
bingchener 2007-05-04
  • 打赏
  • 举报
回复
select ID=identity(int,1,1),* into #test1 from article

select * from #test where ID=2
bingchener 2007-05-04
  • 打赏
  • 举报
回复
select ID=identity(int,1,1),* into #test1 from usertable

select * from #test where ID=3
sbqcel 2007-05-04
  • 打赏
  • 举报
回复
考虑把你查到的数据放入一张临时表或变量表里(指定一个自增的主键)
  • 打赏
  • 举报
回复
记录并没有固定的“行”的概念。SQL Server在你没有给出“order by”的时候,如果有主键列,可能会按照主键列排列。否则就大概没有任何保证行顺序的办法——记录本质上都是以随机方式插入磁盘块的。

如果你要取出某个行,给这个行一个“标识唯一”的业务定义,然后使用where条件去查询。
voice007 2007-05-04
  • 打赏
  • 举报
回复
找出第二行的特征,然后用Where 特征=特征值。
比如:
select * from tablename where id=2
--------------
这个我懂啊,我是说取出select top 5 * from article order by AddTime desc这个里面的第二或者第三行数据怎么办?
voice007 2007-05-04
  • 打赏
  • 举报
回复
sql里。
1楼的请好好看下问题。
Aricc 2007-05-04
  • 打赏
  • 举报
回复
找出第二行的特征,然后用Where 特征=特征值。
比如:
select * from tablename where id=2
sbqcel 2007-05-04
  • 打赏
  • 举报
回复
在程序里还是在sql里哦?
bingchener 2007-05-04
  • 打赏
  • 举报
回复
不是有个行标识吗

select * from article where 行标识=2

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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