首页  ·  知识 ·  数据库
SQL中代替Like语句的另一种写法
佚名  http://www.ourdev.net/  MS-SQL  编辑:dezai  图片来源:网络
比如查找用户名包含有"c"的所有用户, 可以用   use mydatabase   select * from table1 where username like'%c%"   下
比如查找用户名包含有"c"的所有用户, 可以用

  use mydatabase
  select * from table1 where username like'%c%"


  下面是完成上面功能的另一种写法:
  use mydatabase
  select * from table1 where charindex('c',username)gt;0
  这种方法理论上比上一种方法多了一个判断语句,即gt;0, 但这个判断过程是最快的, 我想信80%以上的运算都是花在查找字符串及其它的运算上, 所以运用charindex函数也没什么大不了. 用这种方法也有好处, 那就是对%,|等在不能直接用like查找到的字符中可以直接在这charindex中运用, 如下:
  use mydatabase
  select * from table1 where charindex('%',username)gt;0
  也可以写成:
  use mydatabase
  select * from table1 where charindex(char(37),username)gt;0
  ASCII的字符即为%

本文作者:佚名 来源:http://www.ourdev.net/
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读