ORACLE 주요 함수

RNR·2022년 11월 3일
0

SQL

목록 보기
15/17
post-thumbnail

DUAL 테이블

한 행으로 결과를 출력하기 위한 테이블

SELECT 24*60
FROM DUAL

DUMMY 테이블에 가깝다!

숫자 함수

숫자 데이터를 처리하기 위한 함수

  • ABS : 절대값
  • COS : COSINE
  • EXP : e(2.71828183...) 의 n승
  • FLOOR : 소수점 아래 잘라냄 (버림)
  • LOG : Log 값
  • POWER : POWER(m,n) m의 n승 반환
  • SIGN : SIGN (n) n<0이면 -1, n=0 이면 0, n>0이면 1
  • SIN : sine 값
  • TAN: TANGENT 값
  • ROUND : 특정 자릿수에서 반올림
  • TRUNC : 특정 자릿수에서 잘라냄(버림)
  • MOD :입력받을 수를 나눈 나머지 값

문자 처리 함수

대소문자 변환 함수

UPPER : 대문자 변환
LOWER : 소문자 변환
INICAP : 첫글자만 대문자, 나머지는 소문자로

문자 길이를 구하는 함수

LENGTH (한글 1Byte)
LENGTHB (한글 2Byte)

문자 조작 함수

CONCAT : 문자 값 연결
SUBSTR : 문자를 자름(한글 1Byte)
SUBSTRB : 문자를 자름 (한글 2Byte)
INSTR : 특정 문자의 위치 값 반환 (한글 1Byte)
INSTRB : 특정 문자의 위치 값 반환 (한글 2Byte)
LPAD, RPAD : 입력받은 문자열과 기호를 정렬, 특정 길이의 문자열로 반환

형 변환 함수

숫자, 문자, 날짜의 데이터 형 변환
TO_CHAR : 날짜형, 숫자형 > 문자형
TO_DATE : 문자형 > 날짜형
TO_NUMBER : 문자형 > 숫자형

형 변환 함수의 날짜 출력 형식
YYYY
YY
MM
MON
DAY
DY

날짜 함수

SYSDATE : 현재 날짜
MONTHS_BETWEEN : 두날짜 사이가 몇개월인지
ADD_MONTTHS : 특정 날짜에 개월 수 더함
NEXT_DAY : 특정 날짜에서 최초로 도래하는 인자로 받은 요일의 날짜를 반환
LAST_DAY : 마지막 날짜 반환
ROUND : 특정 기준으로 반올림
TRUNC : 특정 기준으로 버림

NVL 함수

NULL을 0 또는 다른 값으로 변환

NVL(expr1, expr2)

expr1 : NULL을 포함하는 컬럼 또는 표현식
expr2 : NULL을 대체하는 값

expr1에 NULL이 지정되어 있으면 expr2 로 변환한다.

NVL2(expr1, expr2, expr3)

expr1을 검사
NULL이 아님 -> expr2 반환
NULL임 -> expr3 반환

NULL일 경우가 제일 마지막!!!

NULLIF(expr1, expr2)

두 표현식을 비교하여
동일 -> NULL 반환
다름 -> expr1 반환

COALESCE(expr1, expr2, expr3, ...)

인수중에서 NULL이 아닌 첫번째 인수 반환

DECODE

switch case 와 같은 기능이다.

decode(표현식, 조건1, 결과1
              조건2, 결과2
              조건3, 결과3
              조건4, 결과4
              기본결과 n
       )  

예시:

decode(job, '부장', sal*1.05, 
            '과장', sal*1.05,
            '대리', sal*1.1, 
            '사원', sal*1.2,
            sal)  

CASE

여러 가지 경우에 대해서 하나를 선택

CASE WHEN 조건 1 THEN 결과1
     WHEN 조건 2 THEN 결과2
	 WHEN 조건 3 THEN 결과3
     WHEN 조건 4 THEN 결과4
     ELSE 결과n
END

if else 와 유사한 구조

profile
개인적 공부 기록. 그때그때 메모합니다.

0개의 댓글