首页 > 解决方案 > 如何从 varchar 表达式中获取结果列

问题描述

我的 MySQL 数据库中有 varchar 列,值是:

经验
'2+3'
'4+5'
'7+1'

我怎样才能得到这些表达式的结果,所以我想要新的 int 列:

经验 资源
'2+3' 5
'4+5' 9
'7+1' 8

标签: mysqlsql

解决方案


由于它总是只是添加两个数字,因此您不需要任何花哨的评估。用于SUBSTRING_INDEX()获取 . 之前和之后的字符串+。然后添加它们。+操作员会自动将字符串转换为数字。

SELECT exp, SUBSTRING_INDEX(exp, '+', 1) + SUBSTRING_INDEX(exp, '+', -1) AS res
FROM yourTable

推荐阅读