『壹』 oracle数据库中有一字段录入了特殊字符,现在想要筛选出该字段包含特殊字符的记录。
where 字段 like "模糊查询内容" ,用这个看能不能做,或者用,case做
『贰』 oracle 自定义函数处理‘过滤掉空格和其他特殊字符函数’怎么写
用regexp_replace这个函数根据正则表达式将特殊字符替换成空串
『叁』 oracle怎么查出字段中含有特殊字符的数据表名:table,字段:col,请直接给出语句,谢谢!
select * from table t where t.col like '%M%' ESCAPE ‘M'
使用ESCAPE定义转义符
在使用LIKE关键字进行模糊查询时,“%”、“_”和“[]”单独出现时,会被认为是通配符。为了在字符数据类型的列中查询是否存在百分号(%)、下划线(_)或者方括号([])字符,就需要有一种方法告诉DBMS,将LIKE判式中的这些字符看作是实际值,而不是通配符。关键字ESCAPE允许确定一个转义字符,告诉DBMS紧跟在转义字符之后的字符看作是实际值。如下面的表达式:
LIKE '%M%' ESCAPE ‘M’
使用ESCAPE关键字定义了转义字符“M”,告诉DBMS将搜索字符串“%M%”中的第二个百分符(%)作为实际值,而不是通配符。当然,第一个百分符(%)仍然被看作是通配符,因此满足该查询条件的字符串为所有以%结尾的字符串。
『肆』 我在去除oracle中的特殊字符,但是要保留以下几个字符 ( ) | 要怎么写语句
str=含有特殊字符的字符串
select translate(str,'()|'||str,'()|') from al;
--这个是只保留“()|”,其他所有字符数字汉字都去专除属的。如果想加入保留什么就在 ‘’ 中再加入就可以了,不过加汉字就有点麻烦了。
select translate('您好123*(','()|'||'您好123*(','()|') from al;
TRANSLATE('您好123*(','()|'||'
----------------------------------------------------------------
(