oracle 查找某字段中含有回车换行的记录,请问怎么写SQL?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 查找某字段中含有回车换行的记录,请问怎么写SQL?相关的知识,希望对你有一定的参考价值。
直接使用下面的语句,粘贴复制,然后把tablename和columnname换成你的表名和列明就可以了。其实不难,这个语句不能再控制台和sqlplus中使用,因为语句中含有回车,sqlplus会默认执行,使用plsql developer工具,在sql window中执行语句就可以了。select * from [tablename] where [columnname] like '%
%';
问题解决后不要忘记采纳。 参考技术A
使用instr与chr函数可以解决你的问题,语句如下:
instr(源字符串, 目标字符串, 起始位置, 匹配序号)
instr函数返回要截取的字符串在源字符串中的位置。
chr(ASCII码)函数将ASCII码转换为字符。
参考技术B select * from table_name where col_name like '%'||chr(13)||'%';Oracle删除字段中的空格、回车及指定字符的实例代码
参考技术A 废话不多说了,直接给大家贴代码了,具体代码如下所示:create
or
replace
procedure
PROC_test
is
--Description:删除字段中的指定字符(回车chr(13)、换行chr(10))
--By
LiChao
--Date:2016-03-01
colname
varchar(20);
--列名
cnt
number;
--包含换行符的列的行数
v_sql
varchar(2000);
--动态SQL变量
begin
--读取表中的列
for
col
in
(select
column_name
from
user_tab_columns
where
table_name
=
'TEMP')
loop
colname
:=
col.column_name;
--替换换行符chr(10)
v_sql
:=
'select
count(1)
from
temp
where
instr('
||
colname
||
',chr(10))>0
';
EXECUTE
IMMEDIATE
V_SQL
into
cnt;
if
cnt
>
0
then
v_sql
:=
'update
temp
set
'
||
colname
||
'=trim(replace('
||
colname
||
',chr(10),''''))'
||
'where
instr('
||
colname
||
',chr(10))>0
';
EXECUTE
IMMEDIATE
V_SQL;
commit;
end
if;
--替换回车符chr(13)
v_sql
:=
'select
count(1)
from
temp
where
instr('
||
colname
||
',chr(13))>0
';
EXECUTE
IMMEDIATE
V_SQL
into
cnt;
if
cnt
>
0
then
v_sql
:=
'update
temp
set
'
||
colname
||
'=trim(replace('
||
colname
||
',chr(13),''''))'
||
'where
instr('
||
colname
||
',chr(13))>0
';
EXECUTE
IMMEDIATE
V_SQL;
commit;
end
if;
--替换'|'
chr(124)
为'*'
chr(42)
v_sql
:=
'select
count(1)
from
temp
where
instr('
||
colname
||
',chr(124))>0
';
EXECUTE
IMMEDIATE
V_SQL
into
cnt;
if
cnt
>
0
then
v_sql
:=
'update
temp
set
'
||
colname
||
'=replace('
||
colname
||
',chr(124),chr(42))'
||
'where
instr('
||
colname
||
',chr(124))>0
';
EXECUTE
IMMEDIATE
V_SQL;
commit;
end
if;
end
loop;
end
PROC_test;
/
以上所述是小编给大家介绍的Oracle删除字段中的空格、回车及指定字符的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
以上是关于oracle 查找某字段中含有回车换行的记录,请问怎么写SQL?的主要内容,如果未能解决你的问题,请参考以下文章