查询在具有特殊中文时在SQL Server中返回不正确的结果

时间:2016-03-17 02:06:05

标签: sql sql-server

DB:

create table Test 
(
     name nvarchar(200),
     lastName nvarchar(200),
     [Key] nvarchar(200)
)

数据:

insert into Test values (N'倩', N'䵧', N'Code123')

查询:

SELECT * 
FROM Test 
WHERE lastName = ''

结果:

name     lastName    Key

倩       䵧           Code123

为什么会返回此结果?因为我的条件是lastName = '',所以它不会返回任何内容。谁能帮助我?非常感谢!!

1 个答案:

答案 0 :(得分:0)

这是整理结果。

select * from test where lastName= N'' COLLATE Chinese_Simplified_Stroke_Order_100_CI_AS;

请看一下这篇文章

Compare unicodes