[英]Add Row_number() to table variable in SQL Server 2012
我有一个存储过程,该过程显示添加row_number
出错:
alter proc xmliterate
@xmlstring xml
as
begin
declare @tablexml table(ids int,
names varchar(50),
parent varchar(50),
nodes varchar(50))
insert into @tablexml (ids, names, parent, nodes)
select
ids = row_number() over (order by names),---error Invalid column name 'names'.
PARENT = B.value('(.)[1]','varchar(50)'),
names = b.value('local-name(.)','varchar(50)'),
nodes = b.value('local-name(..)','varchar(50)')
from
@xmlstring.nodes('SampleXML/*/*')A(B)
select * from @tablexml
end
如果不可能,如何将row_number
添加到结果表变量中?
您的名称列是别名列。 您应该更改代码,从: row_number() over (order by names)
到row_number() over (order by b.value('local-name(.)','varchar(50)'))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.