首页 > 数据库 > mysql教程 > 如何在旧版 MySQL 版本 (MySQL 4) 中对列中的逗号分隔值求和?

如何在旧版 MySQL 版本 (MySQL 4) 中对列中的逗号分隔值求和?

Susan Sarandon
发布: 2024-10-30 04:00:02
原创
1108 人浏览过

How to Sum Comma-Separated Values in a Column in Legacy MySQL Versions (MySQL 4)?

在 MySQL 中对逗号分隔列求和:旧版本的解决方案

在 MySQL 版本 4 中,处理逗号分隔的数字列出现尝试执行聚合时的挑战。然而,虽然现代版本的 MySQL 提供了存储过程来解决此类复杂性,但它们在 MySQL 4 中不可用。

不幸的是,MySQL 4 是一个过时的版本,强烈建议不要使用它。 4.1 分支的最新版本是 2008 年的 4.1.25,使其不受支持并已过时。大多数 Linux 发行版已停止提供 MySQL 4。如果可能,强烈建议升级到 MySQL 5。

尽管如此,如果升级不可行,这里有一个在 MySQL 4 中对逗号分隔的小数列求和的有效解决方案:

<code class="mysql">DELIMITER //
CREATE FUNCTION SUM_OF_LIST(s TEXT)
RETURNS DOUBLE
DETERMINISTIC
NO SQL
BEGIN
DECLARE res DOUBLE DEFAULT 0;
WHILE INSTR(s, ",") > 0 DO
SET res = res + SUBSTRING_INDEX(s, ",", 1);
SET s = MID(s, INSTR(s, ",") + 1);
END WHILE;
RETURN res + s;
END //
DELIMITER ;</code>
登录后复制

使用示例:

<code class="mysql">mysql> SELECT SUM_OF_LIST("5,2.1") AS Result;
+--------+
| Result |
+--------+
|    7.1 |
+--------+</code>
登录后复制

以上是如何在旧版 MySQL 版本 (MySQL 4) 中对列中的逗号分隔值求和?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板