度量快速开发平台-专业、快速的软件定制快开平台

标题: oracle中select查询 where条件中一般的转义字符 [打印本页]

作者: 陈晓龙    时间: 2020-3-12 19:12
标题: oracle中select查询 where条件中一般的转义字符


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_”的表名






作者: 万望    时间: 2020-3-12 22:19
顶一个
作者: 陈晓龙    时间: 2020-3-13 21:56
万望 发表于 2016-4-12 22:19
顶一个

沙发呀!




欢迎光临 度量快速开发平台-专业、快速的软件定制快开平台 (http://bbs.delit.cn/) Powered by Discuz! X3.2