使用For xml和查询提示将查询结果保存到变量中

时间:2017-03-01 11:10:55

标签: sql-server sql-server-2012

DECLARE @xml_var XML  

SET @xml_var = (SELECT *
                FROM Customers 
                WHERE CustomerID = 'Someone'
                FOR XML AUTO, TYPE
                OPTION (OPTIMIZE FOR UNKNOWN)
               )

这会引发语法错误。

无论如何都要将查询提示添加到SQL中吗?如果我删除Option optimize,则分配有效。

1 个答案:

答案 0 :(得分:0)

使用SELECT而不是SET。

DECLARE @xml_var XML  

SELECT @xml_var =  
(
SELECT   *
FROM Customers WHERE CustomerID='Someone'
FOR XML AUTO, TYPE    
)
OPTION (OPTIMIZE FOR UNKNOWN)