ash*_*kov 1 html xml sql t-sql sql-server
您能否帮助我了解如何生成具有多个属性的 XML/HTML
我有这个 SQL 代码
select
[td/@align] = 'center', td = format(GETDATE(),'dd.MM.yyyy'), null
for xml path('tr')
Run Code Online (Sandbox Code Playgroud)
此代码作为其结果返回:
<tr>
<td align="center">16.09.2020</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
我需要
<tr>
<td align="center" style="background-color: red;">16.09.2020</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
无法找到如何做到这一点...
如果我尝试使用这样的东西[td/@align/@style]- SQL 导致错误
列名“td/@align/@style”包含 FOR XML 要求的无效 XML 标识符;'@'(0x0040) 是第一个出错的字符
你在找这个吗:
select 'center' AS [td/@align]
,'background-color: red;' AS [td/@style]
,format(GETDATE(),'dd.MM.yyyy') AS [td]
for xml path('tr')
Run Code Online (Sandbox Code Playgroud)
它产生了这个:
<tr>
<td align="center" style="background-color: red;">16.09.2020</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
您可以将一行列视为 xml 标记值和属性,它们使用别名进行分组AS。因此,对于更多属性,只需添加具有相应别名的新值 - td/@...。