MySQL 4의 쉼표로 구분된 열 딜레마 요약
MySQL 4 데이터베이스에서 데이터 전송을 시도하는 동안 문제가 발생할 수 있습니다. 특히 열 중 하나에 단일 숫자 대신 쉼표로 구분된 십진수 값 목록이 포함된 경우에는 더욱 그렇습니다. SQL 환경 내에서 이러한 값의 원하는 합계를 달성하는 것은 특정 기능의 부족으로 인해 어려움을 겪습니다.
이러한 경우 저장 프로시저를 사용하는 것이 필수적입니다. 이는 MySQL 5.0의 출현과 함께 도입되었기 때문입니다. 그러나 MySQL 4는 주류 Linux 배포판에서 현재 지원이나 가용성이 없는 오래된 버전이므로 업그레이드하는 것이 좋습니다.
당면한 특정 문제를 해결하기 위해 MySQL 5.0 이상에 맞는 솔루션이 제공됩니다.
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 ;
이 기능은 다음 예를 통해 활용할 수 있습니다.
SELECT SUM_OF_LIST("5,2.1") AS Result;
결과 출력은 다음과 같습니다.
+--------+ | Result | +--------+ | 7.1 | +--------+
위 내용은 MySQL 4 데이터베이스 열에서 쉼표로 구분된 십진수 값을 어떻게 합산할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!