好源码站-站长学院 - 首页

| 网络编程 | 数据库类 | 网页设计 | 服务器类 | 网站推广 |

搜索:

收藏本站|| 广告服务 |

您的位置:好源码站-站长学院-> 数据库类-> MSSQL-> SQL中代替Like语句的另一种写法

MSSQL

ACCESS
MSSQL
MYSQL
Oracle

本类阅读TOP10

·SQL Server 的通用分页显示存储过程
·SQL的数据检索操作简介
·编写通用的ASP防SQL注入攻击程序
·两个防SQL注入过滤代码
·利用instr()函数防止SQL注入攻击
·SQL Server灾难恢复:重创历史性数据
·3个步骤解决SQL注入隐患
·SQL中代替Like语句的另一种写法
·个完整的SQL SERVER数据库全文索引的示例

广告
SQL中代替Like语句的另一种写法

作者:未知 来源:未知 加入时间:2008-10-25 www.haocodes.com

比如查找用户名包含有"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的字符即为%



相关文章


关于本站服务条款广告服务客服中心发布文章

客服QQ:6508128
好源码站-版权所有 ICP备05000822号 www.haocodes.com