我正在寻找比较SQL中的两个Café
,一个类似于Cafe
,另一个varchars在SQL中有一种方法可以比较这两个值。例如:
SELECT *
FROM Venue
WHERE Name Like '%cafe%'
那么,如果有一个名称为Big Bobs Café Extraordinaire
的场所,它会包含在结果集中吗?
发布于 2010-03-17 18:44:31
通过将不区分重音的特定collation应用于select:
SELECT *
FROM Venue
WHERE Name COLLATE Latin1_General_CI_AI Like '%cafe%' COLLATE Latin1_General_CI_AI
CI代表“不区分大小写”,AI代表“不区分重音”。
发布于 2017-09-22 13:12:01
可以使用Latin1_general_CI_AI
执行区分重音和不区分重音搜索
这里的AI
是不敏感的,AS
是敏感的。例如,如果不敏感,和是一样的。
在下面的查询中,Latin1_general_CI_AI
可以分为以下几个部分。
latin1
使服务器使用字符集拉丁语1处理字符串,基本上是ascii.您的查询应如下所示:
SELECT * FROM Venue WHERE Name COLLATE Latin1_general_CI_AI Like '%cafe%' COLLATE Latin1_general_CI_AI
预期的结果如下:
Id name
1 Café
2 Cafe
https://stackoverflow.com/questions/2461522
复制相似问题