mysql 문자열을 구분자로 구분해서 처리시 관련 함수

· 11년 전 · 3147

문자열을 구분자로 구분해서 처리시 필요해서 만들어 봤습니다. 

 

문자열을 구분자로 읽는 함수 

CREATE DEFINER=`%`@`localhost` FUNCTION `F_SPLIT_STRING`(`nStr` TEXT, `nDelim` VARCHAR(4), `nPos` INT) 

RETURNS TEXT 

LANGUAGE SQL 

NOT DETERMINISTIC 

CONTAINS SQL 

SQL SECURITY DEFINER 

COMMENT '문자열을 구분자로 해당열 가져오기' 

BEGIN 

DECLARE sStr1 TEXT; 

DECLARE sStr2 TEXT; 

 

SET sStr1 = SUBSTRING_INDEX(nStr, nDelim, nPos); 

SET sStr2 = SUBSTRING_INDEX(sStr1, nDelim, -1); 

 

RETURN sStr2; 

END 

 

사용법 : select F_SPLIT_STRING('a,b,c',',',2); 

결과 : b 

----------------------------------------------------------------------------------- 

CREATE DEFINER=`%`@`localhost` FUNCTION `F_ARRAY_LEN`(`nStr` TEXT, `nDelim` VARCHAR(4)) 

RETURNS int(11) 

LANGUAGE SQL 

NOT DETERMINISTIC 

CONTAINS SQL 

SQL SECURITY DEFINER 

COMMENT '특정문자로 배열을 나눌때 배열의 수' 

BEGIN 

DECLARE sLen1 INT; 

DECLARE sLen2 INT; 

DECLARE sLen INT; 

 

set sLen1 = length(nStr); 

set sLen2 = length(replace(nStr,nDelim,'')); 

set sLen = sLen1 - sLen2 + 1; 

 

RETURN sLen; 

END 

사용법 : select F_ARRAY_LEN('a,b,c',','); 

결과 : 3 

|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 1,252
11년 전 조회 1,640
11년 전 조회 1,188
11년 전 조회 5,461
11년 전 조회 3,594
11년 전 조회 5,140
11년 전 조회 1,003
11년 전 조회 1,342
11년 전 조회 1,557
11년 전 조회 1,440
11년 전 조회 1,373
11년 전 조회 843
11년 전 조회 3,528
11년 전 조회 3,072
11년 전 조회 2,408
11년 전 조회 1,623
11년 전 조회 1,644
11년 전 조회 3,061
11년 전 조회 1,003
11년 전 조회 1,228
11년 전 조회 2,555
11년 전 조회 3,470
11년 전 조회 1,369
11년 전 조회 924
11년 전 조회 1,568
11년 전 조회 869
11년 전 조회 1,457
11년 전 조회 929
11년 전 조회 1,613
11년 전 조회 1,388
11년 전 조회 2,179
11년 전 조회 3,830
11년 전 조회 3,331
11년 전 조회 3,792
11년 전 조회 1,569
11년 전 조회 1,777
11년 전 조회 2,505
11년 전 조회 1,187
11년 전 조회 1,615
11년 전 조회 3,749
11년 전 조회 2,471
11년 전 조회 878
11년 전 조회 1,433
11년 전 조회 1,347
11년 전 조회 987
11년 전 조회 3,131
11년 전 조회 1,597
11년 전 조회 1,469
11년 전 조회 835
11년 전 조회 3,148
11년 전 조회 3,081
11년 전 조회 894
11년 전 조회 3,598
11년 전 조회 1,020
11년 전 조회 903
11년 전 조회 1,210
11년 전 조회 1,013
11년 전 조회 809
11년 전 조회 1,247
11년 전 조회 1,943
11년 전 조회 1,216
11년 전 조회 974
11년 전 조회 811
11년 전 조회 2,565
11년 전 조회 2,120
11년 전 조회 2,649
11년 전 조회 1,587
11년 전 조회 2,851
11년 전 조회 3,253
11년 전 조회 4,624
11년 전 조회 5,967
11년 전 조회 2,322
11년 전 조회 1,880
11년 전 조회 1,629
11년 전 조회 1,273
11년 전 조회 1,028
11년 전 조회 1,203
11년 전 조회 1,097
11년 전 조회 1,567
11년 전 조회 2,394
11년 전 조회 1,048
11년 전 조회 1,231
11년 전 조회 1,897
11년 전 조회 1,569
11년 전 조회 1,473
11년 전 조회 1,397
11년 전 조회 1,310
11년 전 조회 3,652
11년 전 조회 1,302
11년 전 조회 1,907
11년 전 조회 2,165
11년 전 조회 1,473
11년 전 조회 1,477
11년 전 조회 1,476
11년 전 조회 929
11년 전 조회 1,329
11년 전 조회 1,655
11년 전 조회 1,627
11년 전 조회 989
11년 전 조회 1,342
🐛 버그신고