아미(아름다운미소)

MSSQL 특수문자제거 함수 본문

데이타베이스/MSSQL

MSSQL 특수문자제거 함수

유키공 2018. 1. 13. 17:30

특수문자제거 함수

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE FUNCTION DBO.UFN_REMOVE_SPECIAL_CHARS (
    @mString varchar(256)
)
RETURNS VARCHAR(256)
BEGIN
    IF @mString IS NULL BEGIN
        RETURN NULL;
    END
    DECLARE @mString2 VARCHAR(256) = '';
    DECLARE @mLen INT = len(@mString);
    DECLARE @mInt INT = 1;
     
    WHILE @mInt <= @mLen
        BEGIN
            DECLARE @i INT;
            SET @i = ASCII(SUBSTRING(@mString, @mInt, 1));
            IF (@i BETWEEN 48 AND 57) OR (@i BETWEEN 65 AND 90) OR (@i BETWEEN 97 AND 122)
                BEGIN
                    SET @mString2 = @mString2 + CHAR(@i);
                END
 
            SET @mInt = @mInt + 1;
        END
 
    IF len(@mString2) = 0 BEGIN
        RETURN NULL;
    END
 
    RETURN @mString2;
END
Comments