该SQL只返回第一个Activity元素。我如何选择全部?如果我在查询中删除了[1],那么会出现“value()需要单身人士”的错误。在SQL Server中使用value()从xml列获取多条记录
DECLARE @myDoc xml
SET @myDoc =
'<Root>
<Activities>
<Activity>This is activity one</Activity>
<Activity>This is activity two</Activity>
<Activity>This is activity three</Activity>
</Activities>
</Root>'
SELECT @myDoc.value('(/Root/Activities/Activity)[1]', 'varchar(100)')
如果XML标记出现多次,我想选择多少次? http://stackoverflow.com/questions/26426412/how-to-ens-and-sql-is-able-to-read-all-xml-tag-data – SearchForKnowledge
什么是T和什么是C –
T是一个别名用于由节点函数创建的派生表。该节点函数返回一段xml,其中包含所有Activity节点名称和值(如果有的话,还会返回任何子节点和值)。 C是列别名,在这种情况下,它将xml分解成该列每一行上的'Activity'节点。 – Davos