尝试使用 Like
语句时遇到问题:
首先我有数据表:
当我执行 Sql 命令时,它不会执行我想要的操作。
我的语法:
select * from tbUsers where nUserID like N'%p%';
它不显示任何结果。虽然我知道 'Finds any values that have' p 'in any position'
结果图:
我创建表的代码:
Create table tbUsers(
iIDUser int identity(1,1) not null primary key,
nUserID nvarchar(50) null,
nPassWord nvarchar(50) null,
dDate datetime null,
nName nvarchar(50) null
)
INSERT INTO tbUsers(nUserID,nPassword,nName) VALUES('phuc','123456', 'Phuc Nguyen')
INSERT INTO tbUsers(nUserID,nPassword) VALUES('ngocanh','123456')
INSERT INTO tbUsers(nUserID,nPassword) VALUES('long','123456')
INSERT INTO tbUsers(nUserID,nPassword) VALUES('long%ngocanh','123456')
INSERT INTO tbUsers(nUserID,nPassword) VALUES('phuc nguyen','123456')
请帮我。谢谢你。
最佳答案
由于您使用的是越南语排序规则,因此您无法取回行。你可以很容易地在你的查询中指定排序规则,它会返回你正在寻找的行。
select *
from tbUsers
where nUserID collate SQL_Latin1_General_CP1_CI_AS like N'%p%';
关于sql-server - SQLServer 2005 没有做正确的事情,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50451883/