加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

在SQL Server XML数据范例上行使LIKE语句

发布时间:2021-03-23 21:46:08 所属栏目:编程 来源:网络整理
导读:假如您有一个varchar字段,您可以轻松地执行SELECT * FROM TABLE WHERE ColumnA LIKE’%Test%’以查察该列是否包括某个字符串. 你如作甚XML Type做到这一点? 我有以下内容,只返回具有“文本”节点但我必要在该节点内搜刮的行 select * from WebPageContent

假如您有一个varchar字段,您可以轻松地执行SELECT * FROM TABLE WHERE ColumnA LIKE’%Test%’以查察该列是否包括某个字符串.

你如作甚XML Type做到这一点?

我有以下内容,只返回具有“文本”节点但我必要在该节点内搜刮的行

select * from WebPageContent where data.exist('/PageContent/Text') = 1

办理要领

你应该可以很轻易地做到这一点:
SELECT * 
FROM WebPageContent 
WHERE data.value('(/PageContent/Text)[1]','varchar(100)') LIKE 'XYZ%'

.value要领为您提供现实值,您可以界说要作为VARCHAR()返回的值,然后可以行使LIKE语句举办搜查.

请留意,这不会很是快.因此,假如您的XML中有某些字段必要举办大量搜查,则可以:

>建设一个存储函数,它获取XML并返回您正在探求的值作为VARCHAR()
>在您的表上界说一个新的计较字段,该字段挪用此函数,并使其成为PERSISTED列

有了这个,你根基大将XML的某个部门“提取”到一个计较字段中,使其保持稳固,然后你可以很是有用地搜刮它(哎呀:你乃至可以INDEX谁人字段!).

渣子

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读