該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