티스토리 뷰

반응형

MySql Function 생성 및 작성 방법

CREATE DEFINER=`root`@`%` FUNCTION `스키마`.`함수명`(param1 VARCHAR(1000),param2 VARCHAR(1000),param3 VARCHAR(1000)) RETURNS varchar(1000) CHARSET latin1
    DETERMINISTIC
BEGIN
    
    DECLARE temp VARCHAR(1000); -- 변수병
    DECLARE ch VARCHAR(1);
    DECLARE i INT;
    
    SET i = 1;	-- 변수 set
    SET temp = '';
    
    IF param1 REGEXP param2 THEN
        loop_label: LOOP
        IF i > CHAR_LENGTH(param1) THEN
            LEAVE loop_label; 
        END IF;
        SET ch = SUBSTRING(param1,i,1);
        IF NOT ch REGEXP param2 THEN
            SET temp = CONCAT(temp,ch);
        ELSE
            SET temp = CONCAT(temp,param3);
        END IF;
            SET i=i+1;
        END LOOP;
    ELSE
        SET temp = param1;
    END IF;
    RETURN temp;
END

해당 함수는 text replace 기능

 

끗!@$#%###

반응형