平时大家在对数据库操作时,会遇到对特殊字符的查询,但是利用like查询时一旦遇到 " % , _ ,' ,? "等特殊字符就狒狒了,Oracle给我们提供了一个关键字 escape '/' 方便特殊字符的查询和转义 ;

具体用法如下:

-- 查询记录中包含 “ % ” 字符的记录 
select * from table_name t where t.name like '%/%%' escape '/';

-- 查询记录中包含 “ % ” 字符的记录 
select * from table_name t where t.name like '%\%%' escape '\';

-- 查询记录中包含 “ _ ” 字符的记录 
select * from table_name t where t.name like '%/_%' escape '/';

-- 查询记录中包含 “ ’ ” 字符的记录(特殊对待
select * from table_name t where t.name like '%''%';

如果执行
select * from table_name t where t.name like '%/'%' escape '/'; 

会提示:ORA-01756: quoted string not properly terminated


让我们记住比较有意思的 escape '/' :
    
    
其中 escape '/' 是标识转义字符的关键字语法, " / " 中 / 为用户自定义转义字符;