sql 中实现函数加

来源:百度知道 编辑:UC知道 时间:2024/09/24 01:21:17
我要实现的是判断表中所存的公式,例如:a+b+c 怎样判断一共有几个数加,并依次从其他表中获得a,b,c的值,并计算该失的值.

写个存储过程,应该符合要求,
create or replace procedure pro_test
is
o_str varchar2(100);
v_str varchar2(100); --存放临时截取的字符串
v_num number; --存放 ',' 号所在的位置
begin

v_str := 'a+b+c'; -- 将输入的字符串付值给临时字符串
loop
--查询出第一个','号的位置
select instr(v_str, '+', 1, 1) into v_num from dual;
exit when v_num = 0;
-- 将第一个','号之前的字符串截取给输出字符串
select substr(v_str, 1, v_num-1) into o_str from dual;
-- 将第一个','号之的字符串截取给临时字符串
select substr(v_str, v_num+1) into v_str from dual;
select * from 表 where 字段 = o_str
end loop;
select * from 表 where 字段 = v_str

end pro_test;