首頁  >  文章  >  資料庫  >  如何在舊版 MySQL 版本 (MySQL 4) 中對列中的逗號分隔值求和?

如何在舊版 MySQL 版本 (MySQL 4) 中對列中的逗號分隔值求和?

Susan Sarandon
Susan Sarandon原創
2024-10-30 04:00:021047瀏覽

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn