oracle中有一个变量,值为 01,02,03,04 要转换为 A,B,C,D 如何转?用replace只能转一个

这个字段值为''01,02,03,04'

第1个回答  2017-04-27
1、可以使用decode函数
decode(字段名,'01','A','02','B','03','C','04','D')追问

我试过了,但是它只是给我转换了01的值,后面的没有转换

追答

那你字段里的值什么 可以示例下吗?

比如:01020304

replace(replace(replace(replace(字段名,'01','A'),'02','B'),'03','C'),'04','D')


本回答被提问者和网友采纳

oracle中有一个变量,值为 01,02,03,04 要转换为 A,B,C,D 如何转?用re...
1、可以使用decode函数 decode(字段名,'01','A','02','B','03','C','04','D')

oracle存储过程传入一个字符串参数'1,2,3,4,5,6,7,8',如何分割并转为数...
create or replace type type_split as table of varchar2(50); --创建一个type,如果为了使split函数具有通用性,请将其size 设大些。\\x0d\\x0a\\x0d\\x0a--创建function\\x0d\\x0acreate or replace function split\\x0d\\x0a(\\x0d\\x0a p_list varchar2,\\x0d\\x0a p_sep ...

Oracle中 怎么根据一个字段的值,去掉另一个字段包含其值的部分(见图...
找到字符将相关字符替换为‘’即可。replace(SUPPLIER_SPEC,item_units,‘’)(3)substr substr(SUPPLIER_SPEC,length(item_units)+1,20)因为两个字段千米你的内容是完全一致的,所以只要从SUPPLIER_SPEC字段的length(item_units)+1位开始截取,截取到最后就可以了,后面的20是为了防止出现特别长的字...

oracle 如何将一个字段里的值拆分为多个值显示出来
1.新的PHP文件,如下所示。2.声明数组变量,如下图所示。3.使用内爆函数将数组连接到具有连接字符-的字符串中。4.输出连接后的字符串,如下图所示。5.预览效果如图所示。6.用implode函数使数组拼接成字符串,连接符为?完成如下。

oracle中,如何批量替换某字段的部分值,该字段其他部分保持不变?
1、创建测试表;create table test_str_replace(id varchar2(20),value varchar2(20));2、插入测试数据;insert into test_str_replace values('1','abcbcade');insert into test_str_replace values('2','aaabcbca');insert into test_str_replace values('3','aabcaabcab');commit;3、...

oracle数据库之如何将blob类型转换为varchar2
本文将给大家讲解关于oracle数据库blob类型如何转换为varchar2 : 据说没有数据的时候可以直接转换,试过了也可以,但是一般都是由数据了才会去修改,麻烦产生,直接修改不了,只能通过函数来解决;总的思路是:创建临时字段B→将要转换的字段A放在临时字段中(使用函数转换)→删除A→将B名称改为A创建转换...

oracle数据库中字段转换,找出一列中不可转为数字的行
oracle中没有现成的方法判断数据是否是数字类型的的,可以通过function来实现:CREATE OR REPLACE FUNCTION isnum (str IN VARCHAR2) RETURN NUMBERIS v_str VARCHAR2 (1000);BEGIN IF str IS NULL THEN RETURN 0; ELSE v_str := TRANSLATE (str, '.0123456789', '.'); ...

oracle存储过程中如何对一个变量累加赋值 最好有个例子
以一个从1+2+3+……100为例。代码:declarei int:=1; --定义变量ij int:=0; --定义变量jbeginwhile i<=100 --循环退出条件loop --执行循环j:=j+i; --循环累加值i:=i+1; --依次为i赋值end loop; --停止循环Dbms_Output.Put_Line(j); --打印结果end;结果如下:...

Oracle数据库中有一类vachar型的如:22-五月-03、21-四月-03、22-五月...
select to_date('22-Jun-03','dd-Mon-yy') from dual 这个只能识别引文的。 中文的月份你可能需要转换下了 用 select to_date(replace('22-Jun-03','五月','May'),'dd-Mon-yy') from dual.要不然也不知道有什么办法了。通用的话就是写12个replace嵌套下。就可以了。

Oracle如何对一个多值字段进行分组统计
Oracle 需要首先在数据库中, 创建好 类型 与 函数。来实现一个 split 功能的处理。-- 定义一个对象类型.CREATE OR REPLACE TYPE ty_row_str_split as object (strValue VARCHAR2 (4000));\/-- 定义一个 表\/数组类型, 内容是前面定义的那个对象.CREATE OR REPLACE TYPE ty_tbl_str_split IS...

相似回答