mysql - 如何从 varchar 表达式中获取结果列
问题描述
我的 MySQL 数据库中有 varchar 列,值是:
经验 |
---|
'2+3' |
'4+5' |
'7+1' |
我怎样才能得到这些表达式的结果,所以我想要新的 int 列:
经验 | 资源 |
---|---|
'2+3' |
5 |
'4+5' |
9 |
'7+1' |
8 |
解决方案
由于它总是只是添加两个数字,因此您不需要任何花哨的评估。用于SUBSTRING_INDEX()
获取 . 之前和之后的字符串+
。然后添加它们。+
操作员会自动将字符串转换为数字。
SELECT exp, SUBSTRING_INDEX(exp, '+', 1) + SUBSTRING_INDEX(exp, '+', -1) AS res
FROM yourTable
推荐阅读
- java - Web Socket - 基于 Spring Boot 的应用程序面临内存泄漏问题
- postgresql - 获取多行布尔列的逻辑结果
- javascript - 角度材料分页和排序未按预期工作
- java - 即使最大索引为 300,Logback 也仅创建 22 个日志文件
- sonarqube - 本地 SonarScanner 没有为反应项目导入 lcov.info
- javascript - 自动设置pdf页面高度后页面大小不起作用
- javascript - jQuery | 导航栏问题,当我单击关于我们时,它会更改状态,但是通过单击返回主页它不起作用,标题标题也没有改变
- amazon-ec2 - 无法访问此站点 在 cs-cart 中响应时间过长
- android - 错误:在构建期间调用了 setState() 或 markNeedsBuild()
- android - SplashScreen API 有时不显示图标