select distinct t.TABLE_NAME from user_tab_columns t
where t.TABLE_NAME like 'A/_%' ESCAPE '/'
ESCAPE 后的字符可以随意定义。此语句功能是查出所有以A_开头的表名。由于_在sql的like中代表一个字符,所以需要使用转义字符。
但当有多个like字符时,在每个like后都要指定转移字符,例如:
select distinct t.TABLE_NAME from user_tab_columns t
where t.TABLE_NAME like 'A/_%' ESCAPE '/'
or t.TABLE_NAME like 'B/_%' ESCAPE '/'
or t.TABLE_NAME like 'C/_%' ESCAPE '/'
or t.TABLE_NAME like 'D/_%' ESCAPE '/'
此语句可以查出以“A_”“B_”“C_”“D_”开头的表名。
如果写成
select distinct t.TABLE_NAME from user_tab_columns t
where t.TABLE_NAME like 'A/_%'
or t.TABLE_NAME like 'B/_%'
or t.TABLE_NAME like 'C/_%'
or t.TABLE_NAME like 'D/_%' ESCAPE '/'
那么能查出“A/”且其后至少有一个字符“B/”且其后至少有一个字符“C/”且其后至少有一个字符“D_”的表名