mssql sqlserver 中like 关键字使用注意事项-数据类型


摘要:
下文讲述sql脚本检索数据时,需数据输入正确的字符串类型,否则会导致无法检索出数据

例:

  declare @t table(keyId int identity,info varchar(30))

insert into @t(info)values('maomao365.com')
insert into @t(info)values('maomao猫猫小屋')
insert into @t(info)values('maomao猫猫blog')

---数据检索测试1
declare @info varchar(30)
set @info ='maomao%'
select keyId,info from @t t where t.info like @info 

---数据检索测试2
declare @info1 char(30)
set @info1 ='maomao%'
select keyId,info from @t t where t.info like @info1

----从输出结果上,我们可以看出第二个查询条件中使用char字符,无法检索出任何结果
----深入研究两个变量时候,我们发现@info 和@info1是不一样的
----char 数据类型会自动补齐后面的多余的字符串
select  '变量info:['+@info+']'
select  '变量info1:'+@info1+']'
go

mssql_sqlserver_like检索注意事项

mssql_sqlserver_like检索注意事项



like 检索注意事项:
在字符串检索时,一定要谨慎使用char nchar自动补齐的数据类型,否则你得到的不一定是你想要的结果