我想使用SELECT选择字符串的最终值(例如SelectedItem
)。我想知道MySQL中是否存在函数或方法。
示例:
'3+4'
结果是:
SELECT ('4+1*3') as VALUE;
答案 0 :(得分:0)
您可以分三步完成:
这样的事情:
SET @query = CONCAT('SELECT (', '4+1*3', ') AS VALUE');
PREPARE stmt FROM @query;
EXECUTE stmt;
请注意,这不仅仅是评估数学表达式。恶意用户可以在此处向查询中插入几乎任何内容,因此您可以接受最糟糕的SQL注入攻击,除非您仔细清理粘贴到查询中的字符串以仅允许数学表达式。
请注意,我认为这种操作无用的应用程序。我要说如果你必须评估任意字符串,你可能最好在应用程序代码中这样做,而不是在数据库中。