首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从包含xml字符串的文本列中选择特定值?

如何从包含xml字符串的文本列中选择特定值?
EN

Stack Overflow用户
提问于 2013-09-22 10:22:58
回答 1查看 2.9K关注 0票数 1

我使用的是sql server 2008 r2,我的my_table包含my_col类型的text,其中包含xml,我希望从该xml的根元素中选择一个属性,并将其转换为bit类型(属性在从表中选择一个特定的行时,它的值为'true'/'false'),而不是选择出整个字符串并将其作为相当长的字符串传递回服务器,而且我一次可以选择多个行。我不太擅长regex或sql。以下是我的text/xml列的格式:

代码语言:javascript
复制
<rootElementName <!--lots of attributes--> Recommended="false"><!--...lots of stuff in here...--></rootElementName>

我只想为具有Recommended="false"的行选择out Recommended="false",为Recommended="true"选择1

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-22 10:41:18

首先,必须将文本列转换为xml类型,然后执行XQuery。

代码语言:javascript
复制
SELECT convert(XML,my_col).value('(/rootElementName/@Recommended)[1]', 'bit') rec
FROM  my_table

我查找/改编了问题和问题中的内容。

转换的思想来源于这里

这是一个工作的SqlFiddle

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18942774

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档