多字段模糊查询sql like %% 优化与区别

来源:互联网 发布:怎么做网络歌手 编辑:程序博客网 时间:2024/05/16 23:45

 

 

多字段模糊查询sql like %% 优化与区别

 

http://anforen.5d6d.com/

 

SELECT *

  FROM [KLims].[dbo].[Task] 

where  ClientCompany like '%a%' or [Address] like '%a%'

 

SELECT *

  FROM [KLims].[dbo].[Task] 

where  ClientCompany + [Address] like '%a%'

 

但当其中一字段为null时,用第二种会找不到数据。

http://four-corner.appspot.com/

 

因为当某一字段为null时,拼接的字段整体都为null,要让第二种办法可以使用,可以这样写,将为null的字段,替换为'';

 

SELECT *

  FROM [KLims].[dbo].[Task] 

where  isnull(ClientCompany,'') + isnull([Address],'') like '%a%'

 

这样既可正常执行,又高效。

原创粉丝点击