直接用update语句替换即可.
如test表中有如下数据:
现要将sal中的数字都替换成10,用以下语句:
update?test?set?sal=10;
commit;
更新后结果:
注意:执行update语句后,需要进行commit,也就是提交,这样才会使update生效.
看你的意思应该是一个表的数据替换另一个表的相关数据吧,那就用merge语句就可以.
update也可以.
所谓替换应该就是修改,如果相关内容太多,那就分次分批进行修改就好了.
oracle中可以通过全文检索替换来实现单个字符的替换.
设置全文检索
步骤步骤一:检查和设置数据库角色
首先检查数据库中是否有CTXSYS用户和CTXAPP脚色.如果没有这个用户和角色,意味着你的数据库创建时未安装intermedia功能 (10G默认安装都有此用户和角色).你必须修改数据库以安装这项功能.默认安装情况下,ctxsys用户是被锁定的,所以呢要先启用ctxsys的用户.
步骤二:赋权
在ctxsys用户下,授予测试用户oratext以下权限:
GRANT resource, CONNECT, ctxapp TO oratext;
GRANT EXECUTE ON ctxsys.ctx_cls TO oratext;
GRANT EXECUTE ON ctxsys.ctx_ddl TO oratext;
GRANT EXECUTE ON ctxsys.ctx_doc TO oratext;
GRANT EXECUTE ON ctxsys.ctx_output TO oratext;
GRANT EXECUTE ON ctxsys.ctx_query TO oratext;
GRANT EXECUTE ON ctxsys.ctx_report TO oratext;
GRANT EXECUTE ON ctxsys.ctx_thes TO oratext;
GRANT EXECUTE ON ctxsys.ctx_ulexer TO oratext;
步骤三:设置词法分析器(lexer)
--查询测试
--基本查询
--查询包含多个词语and测试通过
测试通过.
可以通过replace函数来获取特定字符串后,进行字段更新实现:
sql:update tablename set name=replace(name,'替换前字段','替换后字段') where name like '%替换前字段%'.
上面的sql语句的意思是替换tablename中name字段的"替换前字段"为"替换后字段", where后面的语句是筛选出字段中带有"替换前字段"的name值.
望采纳
①.)instr()函数的格式? (俗称:字符查找函数)
where?LENGTHB(codeall)-LENGTHB(replace(codeall,',',''))?=?0
union?all
where?LENGTHB(codeall)-LENGTHB(replace(codeall,',',''))?=?1
上面的回答都是对的,还是多说一句,如果你只是想改最后一个字符(xx这两个字符中也含有"变"不需要改):
udpate
test
set
name
=
substr(name
,1,length(name
)
-
||
'站';
若确认xx两个字符不含"变",或者含的话也要改掉,那么:
update
replace(name,'变','站');commit;
以上就是土嘎嘎小编为大家整理的oracle中怎么替换相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!