SQL。列中的XML值。如何获得?

时间:2016-05-18 12:38:28

标签: sql sql-server xml

例如,我有三个列的表“BigApple”。

  • 第一列包含数字
  • 第二栏包含一些文字
  • 第三列包含XML文件。

我的问题是:如何到达特定标签的特定值的第三列?

3 个答案:

答案 0 :(得分:0)

在XML列https://msdn.microsoft.com/en-us/library/ms190798.aspx

上使用其中一种XML方法

答案 1 :(得分:0)

事实上,如果您在第三列中使用相同类型的XML数据,则可以轻松读取特定标记值。

请使用单个XML变量参考SQL XML query上的示例 以及使用CROSS APPLY

query XML column in SQL database table示例

答案 2 :(得分:0)

毛,你怎么期望得到一个真正帮助你而不显示你的数据的答案?从XML获取数据可能是微不足道的。您只需要一个特定标签吗?还是有几个数据?嵌套数据?

一个简单阅读的例子可能是:

CREATE TABLE #tmpTbl(Number INT, SomeText VARCHAR(100),SomeXML XML);
INSERT INTO #tmpTbl VALUES
 (1,'Test1','<root><a>xmlA1</a><b>xmlB1</b></root>')
,(2,'Test2','<root><a>xmlA2</a><b>xmlB2</b></root>');

SELECT Number
      ,SomeText
      ,SomeXML.value('(/root/a)[1]','varchar(10)') AS Tag_a 
FROM #tmpTbl;
GO

DROP TABLE #tmpTbl;

结果

Number  SomeText    Tag_a
1       Test1       xmlA1
2       Test2       xmlA2