可以创建一个函数,然后来求和。
创新互联建站专注于网站建设|成都网站维护|优化|托管以及网络推广,积累了大量的网站设计与制作经验,为许多企业提供了网站定制设计服务,案例作品覆盖成都混凝土搅拌机等行业。能根据企业所处的行业与销售的产品,结合品牌形象的塑造,量身设计品质网站。
1.先创建一个函数
CREATE OR REPLACE FUNCTION res_exp( p_Express varchar)
RETURN NUMBER
IS
v_RESULT NUMBER;
v_Sql varchar(200);
BEGIN
v_Sql := 'SELECT ' || p_Express || ' FROM dual';
EXECUTE IMMEDIATE ( v_Sql ) INTO v_RESULT ;
RETURN v_RESULT;
END res_exp;
2.通过正则表达式,将PARA_VALUE转为求和表达式,我这里用自己的例子来做:
with t as (
select 'item1=1,item2=2,item3=3' aa from dual
union all
select 'item1=1,item2=2,item3=3' aa from dual
)
SELECT res_exp(regexp_replace(regexp_REPLACE(aa, ',item[[:digit:]]=', '+'), 'item[[:digit:]]=', '')) res
FROM t
你的可以这样写
SELECT res_exp(regexp_replace(regexp_REPLACE(PARA_VALUE, ',item[[:digit:]]=', '+'), 'item[[:digit:]]=', '')) res
FROM 你的表名
有一个函数是concat,有一个运算符是||,这些都是连接字符串用的。
select sum(pay_amount) ,produce_no,if_type,cust_order_id,acc_item_type_id from
from wwl_mid_007
where a.cust_order_id='89451605314754319' )
group by produce_no,if_type,cust_order_id,acc_item_type_id
在oracle数据库中,要求两个字段的和可以用sql语句(前提是两个字段都是数字型):
SELECT num1+num2 AS num FROM table_name;
其中num1、num2是要求和的两个字段,num是新命名的和字段,table_name是要查询的表名。
扩展资料:
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。
可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。
1,如果都是数字类型的直接把这两个字段相加
select
a+b as ab
from S ;
或者你的意思是 select sum(a+b) from S;
2,如果是不同的字段类型就不能求和了,但是可以使用“||”或者CONCAT()函数
2.1 select a||b from S;
2.2 select concat(a,b) from S;
参考资料来源:百度百科-Oracle数据库
将相同字段的值加在一起需要用sum函数。
如emp表中有如下数据:
现要按deptno为分组,将sal的值加在一起,可用如下语句:
select deptno,sum(sal) sal from emp group by deptno;
查询结果: