대 · 소문자를 바꿔 주는 UPPER, LOWER, INITCAP 함수
함수 | 설명 |
---|---|
UPPER(문자열) | 괄호 안 문자 데이터를 모두 대문자로 변환하여 반환 |
LOWER(문자열) | 괄호 안 문자 데이터를 모두 소문자로 변환하여 반환 |
INITCAP(문자열) | 괄호 안 문자 데이터 중 첫 글자는 대문자로, 나머지 문자를 소문자로 변환 후 반환 |
SELECT ENAME, UPPER(ENAME), LOWER(ENAME), INITCAP(ENAME)
FROM EMP;
특정 문자열의 길이를 구할 때 LENGTH 함수를 사용한다.
SELECT ENAME, LENGTH(ENAME)
FROM EMP;
SELECT ENAME, LENGTH(ENAME)
FROM EMP
WHERE LENGTH(ENAME) >= 5;
SELECT LENGTH('한글'), LENGTHB('한글')
FROM DUAL;
// LENGTG 함수는 길이 반환이라 2, LENGTHB 함수는 문자열의 바이트 수를 반환하기 때문에 4
// *한글은 한 문자당 2byte로 처리
문자열 일부를 출력하는 SUBSTR 함수
함수 | 설명 |
---|---|
SUBSTR(문자열 데이터, 시작 위치, 추출 길이) | 문자열 데이터의 시작 위치부터 추출 길이만큼 추출합니다. 시작 위치가 음수일 경우에는 마지막 위치부터 거슬러 올라간 위치에서 시작합니다. |
SUBSTR(문자열 데이터, 시작 위치) | 문자열 데이터의 시작 위치부터 문자열 데이터 끝까지 추출합니다. 시작 위치가 음수일 경우에는 마지막 위치부터 거슬러 올라간 위치에서 끝까지 추출합니다. |
SELECT JOB, SUBSTR(JOB, 1, 2), SUBSTR(JOB, 3, 2), SUBSTR(JOB, 5)
FROM EMP;
문자열 데이터 안에서 특정 문자 위치를 차즌 INSTR 함수
문자열 데이터 안에 특정 문자나 문자열이 어디에 포함되어 있는지를 알고자 할 때 INSTR 함수를 사용한다. INSTR 함수는 총 네 개의 입력 값을 지정할 수 있으며 최소 두 개의 입력 값, 즉 원본 문자열 데이터와 원본 문자열 데이터에서 찾으려는 문자 이렇게 두 가지는 반드시 시정해 주어야 한다.
INSTR([대상 문자열 데이터(필수)],
[위치를 찾으려는 부분 문자(필수)],
[위치 찾기를 시작할 대상 문자열 데이터 위치(선택, 기본값은 1)],
[시작 위치에서 찾으려는 문자가 몇 번째인지 지정(선택, 기본값은 1)]
SELECT INSTR('HELLO, ORACLE!', 'L') AS INSTR_1,
INSTR('HELLO, ORACLE!', 'L', 5) AS INSTR_2,
INSTR('HELLO, ORACLE!', 'L', 2, 2) AS INSTR_3
FROM DUAL;
특정 문자를 다른 문자로 바꾸는 REPLACE 함수
REPLACE([문자열 데이터 또는 열 이름(필수)], [찾는 문자(필수)], [대체할 문자(선택)]
⭐ 만약 대체할 문자를 입력하지 않는다면 찾는 문자로 지정한 문자는 문자열 데이터에서 삭제된다.
데이터의 빈 공간을 특정 문자로 채우는 LPAD, RPAD 함수
LPAD([문자열 데이터 또는 열이름(이름)], [데이터의 자릿수(필수)], [빈 공간에 채울 문자(선택)]
RPAD([문자열 데이터 또는 열이름(이름)], [데이터의 자릿수(필수)], [빈 공간에 채울 문자(선택)]
두 문자열 데이터를 합치는 CONCAT 함수
CONCAT 함수는 두 개의 문자열 데이터를 하나의 데이터로 연결해 주는 역할을 한다.
SELECT CONCAT(EMPNO, ENAME),
CONCAT(EMPNO, CONCAT( ' : ', ENAME))
FROM EMP
WHERE ENAME = 'SCOTT';
특정 문자를 지우는 TRIM, LTRIM, RTRIM 함수
TRIM([삭제 옵션(선택)] [삭제할 문자(선택)] FROM [원본 문자열 데이터(필수)]
TRIM 함수의 삭제할 문자는 필수가 아니므로 지정하지 않아도 된다. 삭제할 문자가 없으면 공백이 제거된다.
LTRIM([원본 문자열 데이터(필수)], [삭제할 문자 집합(선택)]) // 1.
RTRIM([원본 문자열 데이터(필수)], [삭제할 문자 집합(선택)]) // 2.
번호 | 설명 |
---|---|
1. | 원본 문자열의 왼쪽에서 삭제할 문자열을 지정합니다(삭제할 문자열을 지정하지 않으면 공백이 삭제됨). |
2. | 원본 문자열의 오른쪽에서 삭제할 문자열을 지정합니다(삭제할 문자열을 지정하지 않으면 공백이 삭제됨). |
함수 | 설명 |
---|---|
ROUND | 지정된 숫자의 특정 위치에서 반올림한 값을 반환 |
TRUNC | 지정된 숫자의 특정 위치에서 버림한 값을 반환 |
CEIL | 지정된 숫자보다 큰 정수 중 가장 작은 정수를 반환 |
FLOOR | 지정된 숫자보다 작은 정수 중 가장 큰 정수를 반환 |
MOD | 지정된 숫자를 나눈 나머지 값을 반환 |
특정 위치에서 반올림하는 ROUND 함수
ROUND 함수는 TRUNC 함수와 함께 가장 많이 사용하는 숫자 함수 중 하나이다.
ROUND([숫자(필수)], [반올림 위치(선택)]) // 1.
번호 | 설명 |
---|---|
1. | 특정 숫자를 반올림한 결과를 출력하는 데 사용합니다. 반올림 위치를 지정하지 않으면 소수점 첫 번째 자리에서 반올림이 수행됩니다. |
특정 위치에서 버리는 TRUNC 함수
TRUNC 함수는 지정된 자리에서 숫자를 버림 처리하는 함수이다.
TRUNC([숫자(필수)], [버림 위치(선택)]) // 1.
번호 | 설명 |
---|---|
1. | 특정 위치에서 숫자를 버림한 결과를 출력하는 데 사용합니다. 버림 위치를 지정하지 않을 경우 소수점 첫 번째 자리에서 버림이 수행됩니다. |
지정한 숫자와 가까운 정수를 찾는 CEIL, FLOOR 함수
CEIL ([숫자(필수)])
FLOOR([숫자(필수)])
숫자를 나눈 나머지 값을 구하는 MOD 함수
MOD([나눗셈 될 숫자(필수)], [나눌 숫자(필수)]) // 1.
번호 | 설명 |
---|---|
1. | 특정 숫자를 나누고 그 나머지를 출력하는 함수입니다. |