oracle中varchar2类型与integer类型的变量进行运算
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中varchar2类型与integer类型的变量进行运算相关的知识,希望对你有一定的参考价值。
varchar2 类型的 '2012-05'
integer 类型的 1
如何进行 '2012-05'-1这样的运算?
varchar2能参与integer的计算必须使varchar2保存的是数字型的字符,然后通过to_number函数转换进行计算。
1、创建表,录入数据:
(id int,
sal varchar2(10));
insert into t values (1,\'10\');
insert into t values (2,\'20\');
commit;
2、执行加法运算:
select id,to_number(sal)+10 from t;3、查询结果:
begin
a:='2012-05';
b:=1;
dbms_output.put_line(to_char(to_date(a||'-'||b,'yyyy-mm-dd'),'yyyy-mm-dd'));
end;
留意oracle中integer和number的区别
INTEGER是整型,数字类型是-1,0,1等 NUMBER是数字型,可以设置小数位如num(6,2),即整数位长度为6,小数位长度为2 如果在建库时varchar型的长度太大,没什么影响,别超过最长字符长度就可以 参考技术A number 既可以存浮点,也可以存整数:number(p,s) p默认38位,s指的是小数位数;integer 是number的子类,属于38位精度整数;本回答被提问者和网友采纳
以上是关于oracle中varchar2类型与integer类型的变量进行运算的主要内容,如果未能解决你的问题,请参考以下文章
PLS-00307子程序仅在类型参数方面有所不同(RAW与VARCHAR2)