mysql - 如何在 MySQL 列中添加逗号分隔的数字字符串中的数字?
问题描述
我有一个 MySQL 列,其中包含一串用分号分隔的分数,例如:“5;21;24;25;26;28;117”。
此列不是设计创建的,而是通过使用 GROUP_CONCAT 和 GROUP BY 从表中的多行收集值创建的。原始数据以电子表格的形式到达,其中包含多行 ID 值。
我可以使用带有 REPLACE 函数的 select 子句来替换 ; 带+。
SELECT values, REPLACE(values,";","+") AS score FROM [table_name] WHERE 1
values score
5;21;24;25;26;28;117 5+21+24+25+26+28+117
但是我需要的是:5+21+24+25+26+28+117 的总和得到 246。
在不使用其他脚本语言的情况下,有什么方法可以在 MySQL 中做到这一点?
SELECT 子句向我显示了一串用 + 符号连接的数字。我正在寻找一种方法来评估该字符串以给我结果:246
更新:当我提出我的问题时,我做了更多的研究并想出了这个链接来解决我的问题:
我保留这个问题和答案的链接,以防它可以帮助其他人搜索相同的内容。
解决方案
推荐阅读
- wordpress - 在 woocommerce 中添加比较价格
- theorem-proving - 如何证明 Mizar(数学定理证明语言)中有一个等于 1 的自然数?
- java - 如何将 comp3 文件解压缩为可读格式?
- python - 如何摆脱 Pycharm 控制台中的省略号并使用 Quandl 显示信息?
- haskell - 读取语句列表并以单个表达式结尾,when 语句可以是表达式
- debugging - PyCharm 在调试模式下说“无法显示帧变量”?(与 gevent 无关)
- python - 如何应用动态规划来计算图中的最短路径?
- google-cloud-platform - 在数据存储中创建/更新触发云功能
- python - 从一列中提取并复制以“Unit”开头的字符串到新列:Pandas
- php - 如何从 Soap Webservice 转换结果并在刀片 laravel 中显示?