공부
mySQL 문자열 분해
GanzStorm
2015. 5. 18. 10:45
REPLACE(SUBSTRING(SUBSTRING_INDEX(log_value, '|', 1), LENGTH(SUBSTRING_INDEX(log_value, '|', 0)) + 1), '|', '')
== SUBSTRING_INDEX(log_value, '|', 1)
SUBSTRING_INDEX(str, delim, count);
str 문자열에 delim 구분자를 기준으로 count 수 만큼 반환. 음수이면 뒤에서 카운터합니다.
mysql> SELECT SUBSTRING_INDEX('www.php.net', '.', 2);
-> www.php
mysql> SELECT SUBSTRING_INDEX('www.php.net', '.', -2);
-> php.net
mysql> SELECT SUBSTRING_INDEX('myid@domain.com', '@', -1);
-> domain.com
mysql> SELECT SUBSTRING_INDEX('myid@domain.com', '@', 1);
-> myid
SUBSTRING(str, pos[, len]);
mysql> SELECT SUBSTRING('habonytest', 5);
-> nytest
mysql> SELECT SUBSTRING('habonytest', 3, 2);
-> bo
mysql> SELECT SUBSTRING('habonytest', FROM 2);
-> abonytest
REPLACE(str, from_str, to_str)
REPLACE(바꿀려는 필드명, '수정전 문자열', '수정후 문자열')
LENGTH() : 길이를 bytes로 나타낸다.
SELECT LENGTH('한글') -> 6
SELECT LENGTH('abc') -> 3