T-SQL匹配特殊字符。 Pre应匹配Pré

时间:2009-07-15 15:25:22

标签: sql-server tsql special-characters

我有一个公司名称列表,用户必须输入他的公司名称才能进入系统。假设我们有公司“PréABC”,现在我希望用户能够输入“Pre”或“Pré”。

首先我认为这是LIKE语句的内置功能,但遗憾的是它不是。有什么想法吗?

2 个答案:

答案 0 :(得分:5)

这与整理有关。每个数据库都有自己的排序规则(任何列都可以覆盖该排序规则)。在您的情况下,您正在寻找一种不是区分重音且不区分大小写的排序规则。尝试将数据库配置为“SQL_Latin1_General_CP1_CI_AI”。这解码为“代码页1,不区分大小写,不区分重音”,这应该使您的查询按预期工作。

答案 1 :(得分:3)

SELECT  1
WHERE   N'Pré ABC' COLLATE LATIN1_GENERAL_CI_AI LIKE N'%Pre%'