在SQL中有没有代替Like语句的另一种写法?
比如查找用户名包含有"c"的所有用户, 可以用9V,oy/}:?0^5`use mydatabaseV1b/j6sO XNv
select * from table1 where username like%c%"j ?]&rr} L
(Q.U,]5S6s/X"Y'S9{.|5L
下面是完成上面功能的另一种写法:*I5y9T0t Y8xx8F
use mydatabaseq X5?7e3d
select * from table1 where charindex(c,username)>0+`J]DE7Z_
这种方法理论上比上一种方法多了一个判断语句,即>0, 但这个判断过程是最快的, 我想信80%以上的运算都是花在查找字
符串及其它的运算上, 所以运用charindex函数也没什么大不了. 用这种方法也有好处, 那就是对%,|等在不能直接用like(f+v9p ~+Y3a\8C?%w
查找到的字符中可以直接在这charindex中运用, 如下:YnG]0o
use mydatabase \/Oi$c,j#qI9nk
select * from table1 where charindex(%,username)>0WV%K3]kR'b`A
也可以写成:
use mydatabaseYE4t5\1^V1l)A+R;xY
select * from table1 where charindex(char(37),username)>0.BiO h`Y%t%K
ASCII的字符即为%
[list][*][url=http://www.aftiqa.cn/Detail/200802071380547824.html]怎样实现SQL Server的静态页面导出?2[/url][*][url=http://www.aftiqa.cn/Detail/200710311379312854.html]在SQL中有没有代替Like语句的另一种写法?[/url][*][url=http://www.aftiqa.cn/Detail/200806151380693424.html]怎样实现SQL Server静态页面的导出?1[/url][*][url=http://www.aftiqa.cn/Detail/200712281372833254.html]怎样进行SQL语句的自动优化?[/url][*][url=http://www.aftiqa.cn/Detail/200805031380378444.html]怎样实现SQL Server的静态页面导出?4[/url][*][url=http://www.aftiqa.cn/Detail/200801311373045244.html]SQL 2000中怎样将小写转大写金额?[/url][*][url=http://www.aftiqa.cn/Detail/200801021374334894.html]在Linux下怎样访问MS SQL Server数据库?[/url][*][url=http://www.aftiqa.cn/Detail/200803211380463134.html]怎样实现SQL Server的静态页面导出?3[/url][*][url=http://www.aftiqa.cn/Detail/200710311379812514.html]在SQL中怎样设置允许同时连接的用户数?[/url][/list]
页:
[1]