此代码:
SomeField + ' <' + cast(count(AnotherField) as varchar(6)) + '>'
在网格视图中生成以下结果:
Blah <Blah2>
如何确保HTML实体显示为其字符等价物?我很惊讶我无法找到谷歌的答案。
感谢。
这是一个更大的片段:
select
stuff((
select
', ' + SomeField + ' <' + cast(count(AnotherField) as varchar(6)) + '>'
from
SomeTable as SomeAbbrev
where
SomeField = SomeOutsideField
group by
SomeField
order by
SomeField asc
for xml path('')
),1,1,'') SomeFields
from
blablabla
inner join
blablabla
left join
blablabla
left join
blablabla
order by
SomeDateField asc
答案 0 :(得分:2)
您可以查看使用的技术here,或者可以更简单地绕过XML技术并尝试类似下面的示例。
此示例返回所有表及其列为逗号分隔字符串的表。
create function dbo.ColumnString(@table_id int)
returns nvarchar(max)
as
begin
declare @x nvarchar(max)
select @x = coalesce(@x+',','') + c.name
from sys.columns c
where c.object_id = @table_id
order by c.name
return @x
end
go
select t.name, dbo.ColumnString(t.object_id)
from sys.tables t
where t.type = 'U'
order by t.name
drop function dbo.ColumnString
答案 1 :(得分:1)
不是一个完美的解决方案,但我的工作......
REPLACE(REPLACE(MyTable.MyColumn, '<', '<'),'>', '>') AS MyColumn
使用UDF替换html代码列表可能是一个更“干净”的解决方案。