Bagaimana Menjumlahkan Nilai Dipisahkan Koma dalam Lajur dalam Versi MySQL Legasi (MySQL 4)?

Susan Sarandon
Lepaskan: 2024-10-30 04:00:02
asal
1033 orang telah melayarinya

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

Menjumlahkan Lajur Dipisahkan Koma dalam MySQL: Penyelesaian untuk Versi Legasi

Dalam MySQL versi 4, pengendalian lajur angka dipisahkan koma dipaparkan cabaran apabila cuba melakukan pengagregatan. Walau bagaimanapun, walaupun versi moden MySQL menawarkan prosedur tersimpan untuk menangani kerumitan sedemikian, ia tidak tersedia dalam MySQL 4.

Malangnya, MySQL 4 adalah versi yang sudah lapuk, dan penggunaannya amat tidak digalakkan. Keluaran terbaharu dalam cawangan 4.1 ialah 4.1.25 pada tahun 2008, menjadikannya tidak disokong dan usang. Kebanyakan pengedaran Linux telah menghentikan penyediaan MySQL 4. Jika boleh, peningkatan kepada MySQL 5 amat disyorkan.

Namun, jika peningkatan tidak dapat dilaksanakan, berikut ialah penyelesaian yang cekap untuk menjumlahkan lajur perpuluhan yang dipisahkan koma dalam 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>
Salin selepas log masuk

Contoh Penggunaan:

<code class="mysql">mysql> SELECT SUM_OF_LIST("5,2.1") AS Result;
+--------+
| Result |
+--------+
|    7.1 |
+--------+</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana Menjumlahkan Nilai Dipisahkan Koma dalam Lajur dalam Versi MySQL Legasi (MySQL 4)?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan