반응형
MySQL 문자열 관련 자주 쓰이는 함수 모음
SUBSTRING, LENGTH, UPPER, LOWER, LPAD, RPAD, TRIM, LTRIM, RTRIM
1. SUBSTRING
예시 쿼리문>
# 회원들이 사는 주요 지역의 고유값 개수
# '서울' '경기' 등 맨 앞 2자리 추출하기 위해 SUBSTRING 사용
SELECT (SUBSTRING (address, 1, 2)) AS region_count FROM member ;
# 중복제거, 고유한 값 추출 하기 위해 DISTINCT 사용
SELECT DISTINCT ((SUBSTRING (address, 1, 2))) AS region_count FROM member ;
# COUNT : 말 그대로 카운트!
SELECT COUNT (DISTINCT (SUBSTRING (address, 1, 2))) AS region_count FROM member ;
출력 결과>
region_count |
9 |
2. LENGTH
문자열의 길이를 구해줌
예시 쿼리문>
SELECT LENGTH (address) FROM member ;
출력 결과>
LENGTH (address) |
46 |
49 |
62 |
55 |
3. UPPER, LOWER
UPPER : 문자열을 모두 대문자로 바꿔서 보여줌
SELECT UPPER (email) FROM member ;
LOWER : 문자열을 모두 소문자로 바꿔서 보여줌
SELECT LOWER (email) FROM member ;
4. LPAD, RPAD
문자열의 왼쪽 또는 오른쪽을 특정 문자열로 채워주는 함수
LPAD는 LEFT(왼쪽) + PADDING(채우기)의 줄임말
RPAD는 RIGHT(오른쪽) + PADDING(채우기)의 줄임말
예를 들어 LPAD(age, 10, ’0’)는 age 컬럼의 값을,
왼쪽에 문자 0을 붙여서 총 10자리로 만드는 함수
보통 어떤 숫자의 자릿수를 맞출 때 자주 사용하는 함수
예시 쿼리문>
SELECT LPAD (age,10, '0') FROM member ;
출력 결과>
LPAD (age,10, '0') |
0000000028 |
0000000029 |
0000000111 |
예시 쿼리문>
SELECT RPAD (age,10, '!') FROM member ;
출력 결과>
RPAD (age,10, '!') |
29!!!!!!!! |
300!!!!!!! |
36!!!!!!!! |
5. TRIM, LTRIM, RTRIM
문자열에 존재하는 공백을 제거하는 함수들
LTRIM : 왼쪽 공백 삭제
RTRIM : 오른쪽 공백 삭제
TRIM : 왼쪽, 오른쪽 양쪽 다 공백 삭제
SELECT LTRIM(word) FROM test ;
SELECT RTRIM(word) FROM test ;
SELECT TRIM(word) FROM test ;
이 TRIM 함수들이 문자열 내부에 존재하는 공백을 없애는 건 아님 !!!
'IT > SQL' 카테고리의 다른 글
[MySQL] 서브쿼리 사용법 (0) | 2022.02.01 |
---|---|
[MySQL] SELECT 문 각 절들의 사용 순서, 실제 실행 되는 순서 (0) | 2022.01.26 |
[MySQL] GROUP BY , HAVING, WITH ROLLUP (0) | 2022.01.26 |
[MySQL] 컬럼 이름 바꿔서 보여주기 Alias (AS) (0) | 2022.01.26 |
[MySQL] NULL 이 있는 로우 조회하기 (0) | 2022.01.26 |
댓글