我想别名以下输出:
-- Test table with some rubbish data DECLARE @Test TABLE ( Names [varchar](20) ) INSERT INTO @Test SELECT 'Simon' -- Query returns but with XML_<GUID> alias SELECT Names FROM @Test t FOR XML PATH ('Test')
因此,为了代替参数,我想给它一个别名’Test’而不是XML_GUID的列标题。我似乎无法理解。有人知道吗?我尝试从此处跟踪以下示例:http : //social.msdn.microsoft.com/Forums/nl/sqlxml/thread/1605c722-6388-40ff-9ab5-a3817a1db81f,但我似乎无法让它返回。我总是遇到这样的错误:第1列没有名称。
使其成为子查询:
select ( SELECT Names FROM @Test t FOR XML PATH ('Test'),TYPE) as Test
子查询产生值,但从不提供列名。我也指定了这个名称,,TYPE因为否则它会强制varchar(max)将结果转换为,而您可能想将其保留为xml。
,TYPE
varchar(max)
xml