加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何在变量中存储FOR XML Path的输出?

发布时间:2020-12-12 08:50:43 所属栏目:MsSql教程 来源:网络整理
导读:我想将 XML Path的输出存储在变量中.但是这不起作用: Declare @Tab dbo.SingleColumnTableInsert INTO @TabValues( 'Jack')Insert INTO @TabValues( 'Armageddon')Declare @RetVal varchar(8000) = ''Select Top 1 @RetVal = DataFrom( Select ';' + ' ' + N
我想将 XML Path的输出存储在变量中.但是这不起作用:
Declare @Tab    dbo.SingleColumnTable

Insert INTO @Tab

Values(
    'Jack'
)

Insert INTO @Tab

Values(
    'Armageddon'
)

Declare @RetVal varchar(8000) = ''

Select Top 1 @RetVal = Data
From
(
    Select ';' + ' ' + Name as 'Data'
               From @Tab t2
               for xml path('')
) v

正如您所看到的,我正在尝试将返回的输出的列名设置为Data,但它不起作用.我收到错误列名称’数据’无效.

解决方法

尝试改变
Select Top 1 @RetVal = Data 
From 
( 
    Select ';' + ' ' + Name as 'Data' 
               From @Tab t2 
               for xml path('') 
) v

Select @RetVal = 
( 
    Select ';' + ' ' + Name as Data
   From @Tab t2 
   for xml path('') 
)

SQL Fiddle DEMO

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读