我在mysql中的字段看起来像这样:
constant1,constant2,variable1,variable2,formula
公式字段存储使用constant1,constant2,variable1和variable2的公式。
例如,公式字段可能包含如下计算:
constant1 * variable1
当我使用这样的select语句时:
SELECT constant1, constant2, variable1, variable2, formula
FROM table
如何根据公式字段检索constant1 * variable1
的计算结果?
答案 0 :(得分:1)
您需要以下两种方法之一:
eval
函数。 Usig eval
可以快速实施但很危险,因为它可以做一些你没想到的事情。解析公式最好使用专用库来构建解析器,但如果表达式语法非常简单,则可以自己编写解析器而不使用库。在任何一种情况下,SQL都不是正确的语言。
我建议找一个可以帮助你解析公式的库。无论你选择哪种方式,我都建议你在数据库客户端上完成大部分工作,而不是在SQL中。 SQL根本就不是为这类任务而设计的。