如何使用 Sql Server XQuery 搜索不区分大小写的单词?
Posted
技术标签:
【中文标题】如何使用 Sql Server XQuery 搜索不区分大小写的单词?【英文标题】:How can i search a non case sensitive word with Sql Server XQuery? 【发布时间】:2010-09-09 11:14:18 【问题描述】:我在我的 Sql Server 数据库表中使用了一个 Xml 字段。我正在尝试使用 XQuery contains 方法搜索一个单词,但它似乎在区分大小写的模式下搜索 only。 lower 方法也没有在 Sql Server XQuery 实现上实现。 ¿ 这个问题有简单的解决方案吗?
【问题讨论】:
【参考方案1】:如果您使用的是 SQL Server 2005,恐怕您运气不好。
如果您使用的是 SQL Server 2008,则可以像这样使用大写函数:
DECLARE @x xml = N'abcDEF!@4';
SELECT @x.value('fn:upper-case(/text()[1])', 'nvarchar(10)');
这是 MSDN 上的大写语法链接和几个搜索示例:
http://msdn.microsoft.com/en-us/library/cc645590.aspx
【讨论】:
【参考方案2】:First 来自 google 的链接指向 MSDN 页面:
contains Function (XQuery)
为了不区分大小写 比较,upper-case 或 可以使用小写函数。
【讨论】:
以上是关于如何使用 Sql Server XQuery 搜索不区分大小写的单词?的主要内容,如果未能解决你的问题,请参考以下文章
SQL Server 中的 XQuery 对零值进行 SUM