如何在数据库的查询结果中返回行号?

例如:idnumtypea12namec21nated25adfaf25ssdfg58name查询出type=name返回04wenhongl你的这种写法已经改变了原表的... 例如:

id num type
a 12 name
c 21 nate
d 25 adfa
f 25 ssdf
g 58 name
查询出type = name
返回 0 4
wenhongl 你的这种写法已经改变了原表的排序方式了啊 查询出的结果不是 0 4
展开
 我来答
roy_88
2010-08-30 · TA获得超过3696个赞
知道大有可为答主
回答量:2914
采纳率:100%
帮助的人:2738万
展开全部
Oracle或SQL Server2005以上的版本
row_number排序函数

SQL2000可用,变量赋值

--> --> (Roy)生成测试数据

declare @T table([id] nvarchar(1),[num] int,[type] nvarchar(10))
Insert @T
select N'a',12,N'name' union all
select N'c',21,N'nate' union all
select N'd',25,N'adfa' union all
select N'f',25,N'ssdf' union all
select N'g',58,N'name'

declare @type nvarchar(10),@i int,@s nvarchar(200)
set @type='Name'
select @i=-1,@s=''

Select @i=@i+1,@s=@s+case when type=@type then RTRIM(@i)+' ' else '' end from @T
print @s

(5 row(s) affected)
0 4
来自:求助得到的回答
wenhongl
推荐于2016-04-04 · TA获得超过196个赞
知道小有建树答主
回答量:412
采纳率:0%
帮助的人:403万
展开全部
select * from
(select (row_number() OVER (ORDER BY (select 1) )-1 ) as rowid,* from tb)
a where type='name'
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我今天上课了
2010-08-30 · TA获得超过1410个赞
知道小有建树答主
回答量:844
采纳率:0%
帮助的人:677万
展开全部
select rownum-1 from table;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式