[함수]2. 단일행함수_문자함수
2.2 문자함수
이름 | 의미 |
---|---|
UPPER | 대문자로 변환 |
LOWER | 소문자로 변환 |
INITCAP | 이니셜만 대문자로 변환 |
LENGTH | 문자 길이 반환 |
LENGTHB | 바이트 수 반환 |
INSTR | 특정 문자의 위치 반환 |
SUBSTR | 대상의 시작 위치부터 선택 개수만큼 추출 |
SUBSTRB | 대상의 시작 위치부터 선택 바이트만큼 추출 |
LPAD/RPAD | 빈칸만큼 특정문자로 채움 |
LTRIM/RTRIM | 공백문자 삭제 |
TRIM | 특정 문자 잘라내기 |
2.2.1 UPPER
- 대문자로 변환하는 함수로 UPPER(값 또는 컬럼명)을 넣으면 값 또는 해당 컬럼에 기록된 문자값이 모두 대문자로 반환된다.
SELECT UPPER('song')
FROM dual;
2.2.2 LOWER
- 소문자로 변환하는 함수로 LOWER(값 또는 컬럼명)을 넣으면 값 또는 해당 컬럼에 기록된 문자열값이모두 소문자로 반환된다.
SELECT LOWER('SONG')
FROM dual;
2.2.3 INITCAP
- 단어의 앞 글자만 대문자로 변환해주는 함수로 INITCAP(값 또는 컬럼명)을 넣으면 값 또는 해당 컬럼에 기록된 문자열 값의 첫 글자를 대문자로 변환하여 반환한다.
SELECT INITCAP('sin min a') AS INITCAP
FROM dual;
2.2.4 LENGTH / LENGTHB
LENGTH
- LENGTH(문자열A 또는 문자형컬럼)
- 컬럼에 기록된 문자열값의 길이를 반환하는 함수이다.
LENGTHB
- LENGTHB(문자열A 또는 문자형컬럼)
- 문자열A 또는 컬럼에 기록된 문자열값의 바이트 수를 반환한다.
SELECT LENGTH('한글'), LENGTHB('한글')
FROM dual;
2.2.5 INSTR / INSTRB
INSTR
- INSTR은 문자 또는 컬럼에 포함된 문자의 위치를 찾는 함수
- 검색시작위치, 발견번째 수는 생략할 수 있고, 생략하게 되면 1로 값이 자동으로 들어가
첫 번째부터 검색하여 첫 번째 발견문자의 위치를 반환하고, 만약 인자값을 원하
는 위치부터 시작하여 원하는 번째 문자를 검색할 때는 각 인자값에 값을 넣으면 된다.
SELECT INSTR(문자 또는 컬럼, '검색문자', 검색시작위치, 발견번째 수)
FROM 테이블명;
SELECT INSTR(‘ORACLE WELCOME','O')
FROM dual;
- 시작위치 및 발견번째수를 입력하지 않아 1번째 글자부터 검색하여 첫 번째 번 검색된 값의
위치를 반환하여 ‘ORACLEWELCOME’이라는 문자중 ‘O’RALCE의 O위치를 반환하여 1이라는 반환값이 나온 것.
INSTRB
- INSTR을 바이트로 글자를 반환한다.
SELECT INSTR('한글','글'), INSTRB('한글','글')
FROM dual;
- 영문과 숫자는 1BYTE
2.2.6 SUBSTR / SUBSTRB
- SUBSTR은 대상 문자열이나 컬럼의 자료에서 시작위치부터 선택 개수만큼의 문자를 반환하는 함수
- 해당 문자가 반환할 개수만 반환된다.
- SUBSTR은 문자수, SUBSTRB 함수는 바이트수로 동작한다.
SELECT SUBSTR(대상, 시작위치, 반환할문자수)
FROM dual;
SELECT SUBSTR('오라클 데이터베이스',3)
FROM dual;
SELECT SUBSTR('오라클 데이터베이스',3,5),
SUBSTRB('오라클 데이터베이스',3,5)
FROM dual;
2.2.7 LPAD / RPAD
- 기준 공간 칸수를 지정하고 빈칸만큼 특정문자로 채우는 함수
- 공간칸수보다 첫 번째 인자 문자열의 크기가 크다면, 넘치는 문자열은 제거
LPAD
SELECT LPAD('ORACLE', 10, '+')
FROM dual;
RPAD
SELECT RPAD('ORACLE', 10, '+')
FROM dual;
2.2.8 LTRIM / RTRIM
- 왼쪽 또는 오른쪽의 공백문자를 제거해주는 함수
SELECT ' ORACLE ',
LTRIM(' ORACLE '), -- 왼쪽 공백 제거
RTRIM(' ORACLE '), -- 오른쪽 공백 제거
FROM dual;
2.2.9 TRIM
- 양끝의 특정 문자를 제거하는 함수로, 특정 문자를 지정하지 않으면 양쪽 공백 제거
SELECT TRIM('a' FROM 'aaaOracleaaa')
FROM dual;
Reference
- 테이블 자료 : Oracle -
EMP 테이블
- 참고도서(책) : SQL활용 + 실습 후 정리
- 🎈2020.11.07
Author And Source
이 문제에 관하여([함수]2. 단일행함수_문자함수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@withcolinsong/함수2.-단일행함수문자함수저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)