SQL Server - 使用LIKE子句搜索带有国际字符的字符串

Nik*_*hil 3 sql t-sql sql-server pattern-matching sql-server-2008

我有一个字段'描述',可以有任何unicode字符的产品描述.如果我搜索包含国际字符的描述,并且具有LIKE条件(搜索的单词没有国际字符),我会得到以下结果:

例如:GEWÜRZTRAMINER是其中一个描述.当我做:

Select * from table where Description LIKE '%GEWURZTRAMINER%', it retrieves the entry.
Run Code Online (Sandbox Code Playgroud)

当我做:

Select * from table where Description LIKE '%GEWURZ%', the entry is not retrieved.
Run Code Online (Sandbox Code Playgroud)

(注意:搜索条件不包括Ü但有U)

有没有办法解决这个问题,以便我可以使用'%GEWURZ%'进行检索?

gbn*_*gbn 5

对于bog标准varchar,您必须强制使用重音不敏感的排序规则

Select 1 where 'GEWÜRZTRAMINER' COLLATE LATIN1_GENERAL_CI_AI LIKE '%GEWURZTRAMINER%'
Run Code Online (Sandbox Code Playgroud)

对于您提供的SQL,调用之间应该没有区别.