[Oracle] 문자열 함수

Haneul Kwon·2022년 2월 28일
0
post-thumbnail

문자열 함수

SUBSTR

  • 문자열 추출함수
SUBSTR(문자열, 시작위치, 길이)
SELECT SUBSTR('HELLO', 1, 3) FROM DUAL;


SELECT SUBSTR('HELLO', 3) FROM DUAL;


SELECT NAME, SUBSTR(BIRTHDAY, 6, 2) MONTH FROM MEMBER;

SELECT * FROM MEMBER WHERE SUBSTR(PHONE, 1, 3) = '011';

SELECT * FROM MEMBER WHERE SUBSTR(BIRTHDAY, 6, 2) IN('07', '08', '09');

SELECT * FROM MEMBER WHERE 
PHONE IS NULL AND SUBSTR(BIRTHDAY, 6, 2) IN('07', '08', '09');

CONCAT

  • 문자열 덧셈 함수
SELECT CONCAT('홍','길동') FROM DUAL;


TRIM

  • 공백 제거 함수
SELECT TRIM('   HELLO    ') FROM DUAL;
-- 앞 뒤 공백 제거
SELECT LTRIM('   HELLO    ') FROM DUAL;
-- 왼쪽 공백 제거
SELECT RTRIM('   HELLO    ') FROM DUAL;
-- 오른쪽 공백 제거




UPPER

  • 대문자로 변환
SELECT UPPER('NewLec') FROM DUAL;


LOWER

  • 소문자로 변환
SELECT LOWER('NewLec') FROM DUAL;


SELECT * FROM MEMBER WHERE LOWER(ID) = LOWER('newlec');

REPLACE / TRANSLATE

  • 문자열 대치 함수
REPLACE(문자열, 찾는 문자열, 대치할 문자열)
TRANSLATE(문자열, 찾는 문자열, 대치할 문자열)
SELECT REPLACE('WHERE WE ARE', 'WE', 'YOU') FROM DUAL;


SELECT TRANSLATE('WHERE WE ARE', 'WE', 'YO') FROM DUAL;
-- W > Y, E > O로 대치


SELECT NAME, REPLACE(ADDRESS, ' ', '') FROM MEMBER

LPAD / RPAD

  • 문자열 패딩 함수
  • LPAD('A', n, 'B') / RPAD('A', n, 'B')
  • LPAD - A의 좌측에 B의 문자를 채워 n자리로 만들어서 리턴
  • RPAD - A의 우측에 B의 문자를 채워 n자리로 만들어서 리턴
SELECT LPAD('HELLO', 5) FROM DUAL;
SELECT LPAD('HELLO', 10) FROM DUAL;
SELECT LPAD('HELLO', 10, 2) FROM DUAL;
SELECT LPAD('HELLO', 11, '김') FROM DUAL;
SELECT RPAD('HELLO', 8, '2') FROM DUAL;






SELECT RPAD(NAME, 6, '_') FROM MEMBER;


profile
IT 취준생

0개의 댓글