带有特殊字符的 SQL LIKE

标签 sql sql-server sql-server-2008

如果我尝试创建带有特殊(北欧)字符的选择,例如:

Select * from users where name like '%æ%'

它只是选择所有用户,而不是包含字母“æ”的用户。

我是否需要在数据库中安装一些特殊的驱动程序,或者我是否还遗漏了其他内容?

更新:
我使用的是 SQL Server 2008 数据库,排序规则设置为“SQL_Latin1_General_CP1_CI_AS”,数据字段是可为空的 nVarChar 数据类型。

最佳答案

很可能是某些排序规则或数据类型问题

示例,给出 97 和 230

SELECT ASCII('æ' COLLATE Albanian_CI_AI), ASCII('æ' COLLATE Latin1_General_CI_AS) 

我们基本上需要更多信息。

编辑:Question about Danish/Norwegian å (虽然尚未解决)

编辑 2:如果 name 是 nvarchar,则将代码更改为此,以便文字也变为 unicode。

Select * from users where name like N'%æ%'

关于带有特殊字符的 SQL LIKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3274853/

相关文章:

sql - 在Sql server 2008中查找被删除的记录

sql - 在 postgresql 中使用变量作为键访问 json 对象

MySql 将行转为列,将列转为行

sql-server - 获取以周为单位的差异,数据在 TSQL 中存储为 YYYYWW

SQL Server - 表变量与带有 union 的 select 语句的临时表

sql - 动态旋转表

sql - 如何选择具有指定 ID 和最新日期的前 (5) 行?

Sql Server 相当于 COUNTIF 聚合函数

c# - 将 BIT 值传递给 sql server 存储过程

sql-server - 在sql server中同时使用@@error和try...catch错误处理是否有意义?