Summieren einer durch Kommas getrennten Spalte in MySQL: Eine Lösung für ältere Versionen
In MySQL Version 4 wird der Umgang mit durch Kommas getrennten numerischen Spalten vorgestellt Eine Herausforderung beim Versuch, Aggregationen durchzuführen. Moderne Versionen von MySQL bieten zwar gespeicherte Prozeduren zur Bewältigung solcher Komplexitäten, diese sind jedoch in MySQL 4 nicht verfügbar.
Leider handelt es sich bei MySQL 4 um eine veraltete Version, von deren Verwendung dringend abgeraten wird. Die neueste Version im 4.1-Zweig war 4.1.25 aus dem Jahr 2008, was sie nicht mehr unterstützt und veraltet macht. Die meisten Linux-Distributionen bieten MySQL 4 nicht mehr an. Wenn möglich, wird ein Upgrade auf MySQL 5 dringend empfohlen.
Wenn ein Upgrade dennoch nicht möglich ist, finden Sie hier eine effiziente Lösung zum Summieren von durch Kommas getrennten Dezimalspalten in 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>
Verwendungsbeispiel:
<code class="mysql">mysql> SELECT SUM_OF_LIST("5,2.1") AS Result; +--------+ | Result | +--------+ | 7.1 | +--------+</code>
Das obige ist der detaillierte Inhalt vonWie summiere ich durch Kommas getrennte Werte in einer Spalte in älteren MySQL-Versionen (MySQL 4)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!