首页 > 技术文章 > zzw原创_LIKE与regexp_like中的_及转义符

zzw-zyba 2017-03-27 15:37 原文

1、select table_name from user_tables  where table_name like 'MENU%';
查出以下表
MENU
MENUGGG_131
MENU_132
MENU_133
MENU_134


2、select table_name from user_tables  where table_name like 'MENU_%'
查出以下表:
MENUGGG_131
MENU_132
MENU_133
MENU_134


3、select table_name from user_tables  where table_name like 'MENU@_%'escape'@' ;
   select table_name from user_tables  where table_name like 'MENUv_%'escape'v' ;
   select table_name from user_tables  where table_name like 'MENU\_%'escape'\' ;
   
   都是查出以下表:
MENU_132
MENU_133
MENU_134

  由此可看到,在SQL语句中,_代表一个占位字符 ,而如果要对_转义,可以在_前面加上\,同时语句后面加上 escape'\'
 
 
4、但regexp_like中表达式遵循正则表达式的转义,其中的_并不表示一个占位字符
select table_name from user_tables  where  regexp_like(table_name,'^MENU_.*')
查询结果为:
MENU_132
MENU_133
MENU_134


推荐阅读