当前位置:数据库 > 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 "~"

 


Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,