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

时间:2013-08-20 12:14:59

标签: sql sql-server sql-server-2008 tsql

考虑我的选择查询,我正在使用

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标记:

Set @loc_var = '<Table><TR><TD>This is some dummy Text</TD></TR></TABLE>'等等。然后,上面的结果集最终会嵌入上面的HTML字符串中。 但嵌入后的最终结果包含Select语句结果如下,其余都没问题,没问题。请帮助。

输出:

   <Table><TR><TD>This is some dummy Text</TD></TR></TABLE> &lt;b&gt;Grand Total&lt;/b&gt;

渴望输出

<Table><TR><TD>This is some dummy Text</TD></TR></TABLE><b>Grand Total</b>

2 个答案:

答案 0 :(得分:2)

很难找到:

MathJax

在变量use中选择XML路径后,使用REPLACE:

d3

然后你可以INSERT或SELECT SELECT @DATA = CONCAT('<br><br>',(SELECT X ,',' From MYTABLE For XML PATH (''));

答案 1 :(得分:0)

试试这个 -

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>