从MSSQL 2008中的Select查询返回HTML标记

从MSSQL 2008中的Select查询返回HTML标记,sql,sql-server,sql-server-2008,tsql,Sql,Sql Server,Sql Server 2008,Tsql,考虑我的Select查询,我正在使用 Select Convert(xml, '<b>Grand Total</b>'), Convert(xml,'<b>'+Convert(varchar,Sum(amt))+'</b>')as Amt From myTable For xml path(''),type //with and without results are same 此外,我还有更多的HTML标记来自此表单中的局部变量: 设置@lo

考虑我的Select查询,我正在使用

Select Convert(xml, '<b>Grand Total</b>'),
Convert(xml,'<b>'+Convert(varchar,Sum(amt))+'</b>')as Amt
From myTable
For xml path(''),type  //with and without results are same
此外,我还有更多的HTML标记来自此表单中的局部变量:

设置@loc_var='这是一些伪文本',依此类推。最后,将上述结果集嵌入上述HTML字符串中的某个位置。 但嵌入后的最终结果包含Select语句,结果如下,其余都很好,没有问题。请帮忙

输出:

期望输出

试试这个-

DECLARE @temp TABLE (value INT)
INSERT INTO @temp (value)
VALUES (1),(2)

SELECT '<Table><TR><TD>This is some dummy Text</TD></TR></TABLE>' + (
   SELECT SUM(value) AS [text()]
   FROM @temp
   FOR XML PATH('b')
)
输出-

----------------------------------------------------------------
<Table><TR><TD>This is some dummy Text</TD></TR></TABLE><b>3</b>
很难找到:

SELECT @DATA = CONCAT('<br><br>',(SELECT X ,',' From MYTABLE For XML PATH (''));
在变量使用中选择XML路径后,替换:

SELECT @DATA = REPLACE(REPLACE(@DATA,'&lt ;','<'),'&gt ;','>');--THERE IS SPACE CHARACTERS, YOU SHOULD CLEAN "&gt ;" AND "&lt ;"

然后您可以插入或选择@DATA

,有很多工具非常擅长生成HTML。T-SQL不是其中之一。什么在运行这个SQL查询,为什么它不能生成HTML?@Damien_the_unsiver如果你想从SQL作业发送电子邮件怎么办?
SELECT @DATA = CONCAT('<br><br>',(SELECT X ,',' From MYTABLE For XML PATH (''));
SELECT @DATA = REPLACE(REPLACE(@DATA,'&lt ;','<'),'&gt ;','>');--THERE IS SPACE CHARACTERS, YOU SHOULD CLEAN "&gt ;" AND "&lt ;"