oracle怎么删除字符 oracle删除字符串中某一位

如何在ORACLE表中删除某一字符串后面的所有字符

SQL:UPDATE A_TableName set username=substr(username ,0,instr(username ,'KG',-1) Where username like '%KG%';

为永善等地区用户提供了全套网页设计制作服务,及永善网站建设行业解决方案。主营业务为成都做网站、网站建设、外贸营销网站建设、永善网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

实现思路:截取到特定的字符串(本sql以”KG“为例)之前的内容重新赋值给本列。

解释:A_TableName 为表名,where后面的是筛选的条件,instr是找到username中 从右边(-1为右边)找到第一个KG的位置(通过数字来表示),substr(username ,start,length)是截取username中从 0开始截取长度为length的字符串。

Oracle删除字段中的空格、回车及指定字符的实例代码

废话不多说了,直接给大家贴代码了,具体代码如下所示:

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

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

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

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中的特殊符号

用替换(Ctrl+H),查找字为固定字符,替换为不输入任何值,点击全部替换。

示例,把下表中的百度批量删除。


分享标题:oracle怎么删除字符 oracle删除字符串中某一位
网页URL:http://cdiso.cn/article/hjpjoo.html

其他资讯