我有公式表,一些公式。是否可以编写SQL存储过程来评估每个公式并给出结果?每个公式都是一个表达式,可以有不同的算术运算。在配方中使用的每个值是值指的是一些其他的表表达式评估存储过程
FormulaId | Formula
--------------+-------------
1 | `1 * 3`
2 | `(2 + 3) * (4 + 1)`
3 | `((2 + 3) * (4 + 1))/5`
4 | `(4 + 1) - (3 + 1) - (2 + 1)`
Id | Value
--------------+-------------
1 | 5
2 | 10
3 | 15
4 | 20
5 | 25
结果应该是这样的
FormulaId | EvaluatedValue
--------------+----------------
1 | 75
2 | 625
3 | 25
4 | -10
[在以后要评估的数据库中存储公式(公式)(SQL Server 2005)](https://stackoverflow.com/questions/9722782/storing-formula-equations-in-database-tobe -evaluated-later-sql-server-2005) – ventiseis
有没有一种很好的方式来做你所描述的。我觉得这是一个玩具的例子。你能稍微扩展你的用例吗?可能需要存储任意公式并使其像计算列一样返回。 – Xedni
没有替代存储这个公式截至目前,我们拥有它允许用户创建自己的公式UI(通过选择一些下拉在UI值),我们存储相当于到表中的下拉值的标识。用户创建的这些公式需要在少数地方用于计算。一种替代我们是写C#代码实现公式估计,但由于这种方法耗时,我们将有一百万条记录处理针对公式,我们正在寻找出数据库的方法 –