select
EvalCalculate(
'case
when 1=1 then 1000*0.1-2+15/2
when 1=2 then 2000
when 1=3 then 3000
when 1=4 then 4000
else 4000-200*0.2
end '
)
from dual
--自定义函数
CREATE OR REPLACE FUNCTION EvalCalculate
(str in VARCHAR2) RETURN VARCHAR2
As
numval number;
begin
execute immediate 'select '||str||' from dual' into numval;
return numval;
end;
Oracle中实现javascript中的Eval函数计算效果
最新推荐文章于 2025-09-01 06:00:00 发布
本文介绍了一个使用SQL自定义函数EvalCalculate的具体示例,该函数接收字符串参数并执行复杂的算术运算。示例中展示了如何通过CASE WHEN语句进行条件判断及数学计算。
145

被折叠的 条评论
为什么被折叠?



