sql - SELECT WHERE LIKE 返回不完整的结果,原因不是变音符号
问题描述
我正在搜索结果WHERE name LIKE '%Soucek%'
(或者我尝试过'%Souček%'
或'%Soućek%'
。我得到一个结果。(我将整个列设置为COLLATE SQL_Latin1_General_CP1251_CI_AS
)。如果我搜索'%Sou_ek%'
我得到所有结果。我不明白发生了什么。你有什么想法?
解决方案
考虑使用AI
:“Accent Insensitive”而不是AS
:“Accent Sensitive”。
此外,请确保双方具有相同的排序规则以避免错误或进一步的强制:
WHERE name COLLATE Latin1_General_CI_AI Like '%Soucek%' COLLATE Latin1_General_CI_AI
推荐阅读
- gnuplot - gnuplot 中的抖动点。数据输入文件格式
- javascript - 与 Blazor 进行 JS 互操作时找不到窗口的属性
- angularjs - 如何使用 angular 和 lambda 以及 aws cognito 基于角色管理用户?
- java - 是否可以有多个 bean id (JavaMailSenderImpl) 来启用多个电子邮件发件人?
- javascript - 如何重用数据表选项
- java - jComboBox而不是类别名称将类别ID添加到java netbeans中的数据库中
- html - CSS - 如何在不拉伸的情况下将文本与图像对齐
- javascript - document.elementFromPoint 不精确
- laravel - Laravel 中的评论商店重定向到主页
- post - 在 SoapUI 中通过 VSTS api 执行 groovy 脚本到 POST 时出现 400 错误