当前位置:数据库 > Oracle >>

oracle escape用法

oracle escape用法
 
用来转译的,比如数据库中有个表 test字段name 中存了字符'%',那么我查询的时候如果想查询第二位是 '%'的记录就要用到模糊查询,但是'%'是模糊查询的通配符,我不能如下查询: 
 
select * from test where name like '_%%'; 

 

这样系统不会把第二个【%】当做字符,只能转译,转译默认的符号是 【\】 
select * from test where name like '_\%%'; 

 

 
但是可以自定义转义符,这时候就用 escape,比如定义【*】为转义符 
select * from test where name like '_*%%' escape '*'; 

 

 
没有ESCAPE的时候就是通配符, 
 
SQL语言中用百分号"%"代表任意数量的字符,用下划线"_"代表一个字符,假设需要查询某个字符型字段中包含百分符%的记录,我们需要定义一个代字符("~"并将其置于所要搜索的字符前面,然后用ESCAPE子句将其排除: 
 
SELECT * ; 
FROM table1 ; 
WHERE field1 LIKE "%~%%" ESCAPE "~"

 


CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,