gpt4 book ai didi

mysql/oracle 存储数学公式

转载 作者:行者123 更新时间:2023-11-29 04:27:13 25 4
gpt4 key购买 nike

有什么方法可以从 Oracle 和/或 MySQL 中存储的字符串应用数学公式吗?

col1 | col2 | formula
---------------------
2 | 2 | col1*col2
2 | 3 | col1+col2

SELECT * from tbl

result:
col1 | col2 | formula
---------------------
2 | 2 | 4
2 | 3 | 5

编辑:每行一个公式

最佳答案

我认为您的意思是您想让数据库解析公式字符串。例如,对于 Oracle,您可以

  • 在表中添加一列以包含结果
  • 运行更新语句,该语句将使用表中列的值和公式文本调用 PL/SQL 函数

    更新 {table} set formula_result = fn_calc_result (col1, col2, formula_column);

PL/SQL 函数将通过用这些列的实际值替换“col1”和“col2”等来创建一个字符串。你可以用正则表达式来做到这一点,只要公式是一致的。

然后使用

execute immediate 'select '||{formula}||' from dual' into v_return;
return v_return;

计算结果并返回。

当然,您也可以编写自己的解析器。如果您决定采用这种方式,请不要忘记处理运算优先级、括号等。

关于mysql/oracle 存储数学公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9210865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com