【发布时间】:2010-09-10 06:32:41
【问题描述】:
假设我有这张表(SQL Server 2005):
Id => integer
MyField => XML
Id MyField
1 < Object>< Type>AAA< /Type>< Value>10< /Value>< /Object>< Object>< Type>BBB< /Type><Value>20< /Value>< /Object>
2 < Object>< Type>AAA< /Type>< Value>15< /Value>< /Object>
3 < Object>< Type>AAA< /Type>< Value>20< /Value>< /Object>< Object>< Type>BBB< /Type>< Value>30< /Value>< /Object>
我需要一个 TSQL 查询,它会返回如下内容:
Id AAA BBB
1 10 20
2 15 NULL
3 20 30
请注意,我不知道 xml 字符串中是否会提前有多少个'Type'(例如 AAA、BBB、CCC、DDD 等)。
【问题讨论】:
-
请注意,我不知道 xml 字符串中是否提前有多少 'Type'(例如 AAA、BBB、CCC、DDD 等)。
-
您很可能必须使用动态 sql 和游标。没有单一的陈述可以得到你想要的我不认为。