多字段模糊查询sql like %% 优化与区别
2011-04-09 16:31
591 查看
比如查找用户名包含有"c"的所有用户, 可以用
use mydatabase
select * from table1 where username like'%c%"
下面是完成上面功能的另一种写法:
use mydatabase
select * from table1 where charindex('c',username)>0
这种方法理论上比上一种方法多了一个判断语句,即>0, 但这个判断过程是最快的, 我想信80%以上的运算都是花在查找字
符串及其它的运算上, 所以运用charindex函数也没什么大不了. 用这种方法也有好处, 那就是对%,|等在不能直接用like
查找到的字符中可以直接在这charindex中运用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
也可以写成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即为%
use mydatabase
select * from table1 where username like'%c%"
下面是完成上面功能的另一种写法:
use mydatabase
select * from table1 where charindex('c',username)>0
这种方法理论上比上一种方法多了一个判断语句,即>0, 但这个判断过程是最快的, 我想信80%以上的运算都是花在查找字
符串及其它的运算上, 所以运用charindex函数也没什么大不了. 用这种方法也有好处, 那就是对%,|等在不能直接用like
查找到的字符中可以直接在这charindex中运用, 如下:
use mydatabase
select * from table1 where charindex('%',username)>0
也可以写成:
use mydatabase
select * from table1 where charindex(char(37),username)>0
ASCII的字符即为%
相关文章推荐
- 多字段模糊查询sql like %% 优化与区别
- 多字段模糊查询sql like %% 优化与区别
- 多字段模糊查询sql like %% 优化与区别
- sql语句查询,多字段like模糊查询优化
- sql concat like 多字段模糊查询 其中有null
- sql优化之like模糊查询【亲测】
- Sql性能优化之LIKE模糊查询
- oracle sql语言模糊查询--通配符like的使用教程
- MyBatis SQLServer 模糊查询LIKE、本年、本月、近三月、近两月
- mybatis中怎么使用like形成动态模糊查询,错误使用CONCAT拼接sql的看过来
- oracle sql语言模糊查询--通配符like的使用教程
- Oracle大字段(clob)模糊查询优化方法
- Oracle模糊查询之(3.2从使用函数和sql语法角度来提高模糊查询效率 二)ORACLE中Like与Instr模糊查询性能大比拼
- CI中自定义SQL查询,LIKE模糊查询的处理
- SQL优化 查询语句中,用 inner join 作为过滤条件和用where作为过滤条件的区别
- 数据库-Oracle【SQL模糊查询语句(like) 及SQL Server 2005 导入和导出向导】
- SQL大量数据查询的优化 及 非用like不可时的处理方案
- jdbc对于模糊查询like语句嵌套变量的sql语句写法
- oracle sql语言模糊查询--通配符like
- SQL大量数据查询的优化及非用like不可时的处理方案