본문 바로가기

Data analysis/개념(SQL)

SQL 문자열 관련 함수

728x90
반응형

하루 10분 SQL (위키북스, 한상일 지음)에서 독학하며 모르거나 중요한 부분을 기록한 것 입니다.

 

https://book.naver.com/bookdb/book_detail.nhn?bid=16395921

 

하루 10분 SQL

《하루 10분 SQL》은 데이터베이스를 처음 접하는 사용자와 초급 개발자를 대상으로 SQL을 쉽게 익힐 수 있도록 구성한 입문서이다. 먼저 실습에 필요한 이론을 배운 후 데이터베이스 시스템 개발

book.naver.com


1. UPPER() (영문을 대문자로 바꾸기)

UPPER(문자열)
-> 한글이나 수치형 문자열은 바꾸지 않음!

 

예제 1) '1Day SQL Example : 123 : 오라클' 문자열을 대문자로 바꾸기

SELECT UPPER('1Day SQL Example : 123 : 오라클')
FROM DUAL;

[실행결과]

'Day SQL Example' 문자열만 대문자로 바꿈

예제 2) 기타정보 테이블에서 고객영문명을 대문자로 바꾸기

SELECT CUSTOMER_CD, CUSTOMER_ENG_NM, UPPER(CUSTOMER_ENG_NM) AS UPPER_CUSTOMER_ENG_NM, ITEM_LIST
FROM TB_ETC_INFO;

[실행결과]

 

2. LOWER() (영문을 소문자로 바꾸기)

LOWER(문자열)
-> 한글이나 수치형 문자열은 바꾸지 않음!

 

예제) 기타정보 테이블에서 고객영문명을 소문자로 바꾸기

SELECT CUSTOMER_CD, CUSTOMER_ENG_NM, LOWER(CUSTOMER_ENG_NM) AS LOWER_CUSTOMER_ENG_NM, ITEM_LIST
FROM TB_ETC_INFO;

[실행결과]

 

3. SUBSTR(), SUBSTRB() (문자열의 일부 구하기)

SUBSTR(문자열, 시작위치[,취득개수])
SUBSTRB(문자열, 시작위치[,취득개수])

- '문자열'의 '시작위치'부터 '취득개수'만큼의 문자를 구하기
- '문자열'의 위치는 첫 문자가 1, '취득개수'가 없으면 '시작위치'에서 마지막 문자까지 구함

<두 함수의 차이점>
* SUBSTR() 함수 -> 한글(또는 전각문자) 1글자의 자릿수를 1자리로 인식
* SUBSTRB() 함수 -> 한글(또는 전각문자) 1글자의 자릿수를 2자리로 인식

한글(예: '가나다'), 전각문자(예: '★◆') 등은 일반적으로 2바이트 크기를 가지는 문자

 

예제 1) '1Day SQL Example : 123 : 오라클' 문자열에서 처음부터 8개 문자를 SUBSTR() 함수로 구현하기

SELECT SUBSTR('1Day SQL Example : 123 : 오라클', 1, 8)
FROM DUAL;

[실행결과]

 

예제 2) '1Day SQL Example : 123 : 오라클' 문자열에서 26번째 위치부터 3개 문자를 SUBSTR() 함수로 구현하기

-> '취득개수'가 없으면 문자열 마지막까지 구함

SELECT SUBSTR('1Day SQL Example : 123 : 오라클', 26, 3),
    SUBSTR('1Day SQL Example : 123 : 오라클', 26)
FROM DUAL;

[실행결과]

 

728x90
반응형

'Data analysis > 개념(SQL)' 카테고리의 다른 글

SQL 수치 관련 함수  (0) 2022.04.08
SQL 날짜 관련 함수  (0) 2022.04.02
SQL 집합 명령어  (0) 2022.04.02
SQL 명령어와 함수 (3)  (0) 2022.04.01
SQL 명령어와 함수 (2)  (0) 2022.04.01