嗨我想通过执行以下查询来查找我的数据库(SQL Server)中的所有行,其中的字符é在他们的文本中。如何比较SQL Server中的Unicode字符?
SELECT COUNT(*) FROM t_question WHERE patindex(N'%[\xE9]%',question) > 0;
SELECT COUNT(*) FROM t_question WHERE patindex(N'%[\u00E9]%',question) > 0;
但我发现了两个问题:(1)他们两人正在返回不同的行数和(b)他们正在返回其不具有指定字符的行。
是我构建正则表达式和比较Unicode正确的方式吗?
编辑:
问题柱是使用数据类型nvarchar
存储。 以下查询给出了正确的结果。
SELECT COUNT(*) FROM t_question WHERE question LIKE N'%é%';
因此,第一个与\,0,0,E或9匹配?有没有一种方法可以在查询中真正指定unicode? – rkg 2010-11-30 23:08:52