Sql-Server 2008 R2
整理是Chinese_Simplified_Pinyin_100_CI_AS
。
当我使用
select 1 where N'⑦' = N'7'
输出1,但是当我将操作符更改为like
select 1 where N'⑦' like N'7'
它不输出任何东西。
为什么like
操作符行为如此奇怪?我错过了什么吗?
答案 0 :(得分:1)
这似乎是一个错误。针对没有通配符的模式的LIKE
应始终返回=
返回的相同内容。
其他人可以通过运行以下查询来查看此行为:
SELECT
CASE WHEN N'⑦' COLLATE Chinese_Simplified_Pinyin_100_CI_AS = N'7' THEN 'Y' ELSE 'N' END,
CASE WHEN N'⑦' COLLATE Chinese_Simplified_Pinyin_100_CI_AS LIKE N'7' THEN 'Y' ELSE 'N' END
-- Y N