SQL区别于XML

时间:2017-05-26 15:45:28

标签: c# sql .net xml

我有一个sql表如下:

 AID  | BID  |  STIME     | XML                   | PKEY 
 1234 | 5678 | 2012-04-12 | <XML>duplicate</XML>  | 34555
 1234 | 5678 | 2012-04-12 | <XML>duplicate</XML>  | 34555
 1593 | 5847 | 2012-03-13 | <XML>valid</XML>      | 89564

有重复的行,我需要消除它们。我的最终目标是获取XML行(它是XML数据类型)concat XML列并从我的C#应用​​程序中获取。

在SQL级别,我尝试了以下内容:

Select Distinct XML from Table
where AID = '1234'
for XML Auto

我收到错误:

  

不能将XML数据类型选为DISTINCT,因为它不是   可比

1 个答案:

答案 0 :(得分:1)

只是为了扩展Jeroen Mostert的评论

示例

Select XML = convert(XML,AsString)
 From (
        Select Distinct AsString = convert(nvarchar(max),XML )
         From YourTable
         Where AID = '1234'
      ) A

将XML作为

返回
<XML>duplicate</XML>