简体   繁体   English

SELECT WHERE LIKE 返回不完整的结果,原因不是变音符号

[英]SELECT WHERE LIKE returns incomplete results and the reason is not diacritics

I am searching for results WHERE name LIKE '%Soucek%' (or I tried '%Souček%' or '%Soućek%' . I get one result. (I set the whole column to be COLLATE SQL_Latin1_General_CP1251_CI_AS ). If I search for '%Sou_ek%' i get all results there are. I dont understand what is going on. Do you have an idea?我正在搜索WHERE name LIKE '%Soucek%'结果(或者我尝试'%Souček%''%Soućek%' 。我得到一个结果。(我将整个列设置为COLLATE SQL_Latin1_General_CP1251_CI_AS )。如果我搜索'%Sou_ek%'我得到了所有结果。我不明白发生了什么。你有什么想法吗?

Consider using AI : "Accent Insensitive" instead of AS : "Accent Sensitive".考虑使用AI :“Accent Insensitive”而不是AS :“Accent Sensitive”。

Also, make sure that both sides have the same collation to avoid errors or further coercions:此外,确保双方具有相同的排序规则以避免错误或进一步的强制转换:

WHERE name COLLATE Latin1_General_CI_AI Like '%Soucek%' COLLATE Latin1_General_CI_AI

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM