본문 바로가기
데이터베이스

오라클 SQL 자주 사용하는 함수 정리

by bloodFinger 2020. 2. 6.

드래그시 정답 확인 가능

 

숫자함수

  • ABS(n) : n의 절대값을 반환
  • CEIL(n) , FLOOR(n) : n보다 같거나 큰 정수를 반환한다
  • ROUND(n,i) : n을 소수점 i+1번째 자리에서 반올림
  • TRUNC(n,i) : n을 소수점 i+1번째 자리에서 버림
  • POWER(n1,n2) : n1을 n2번 거듭제곱한 결과
  • MOD(n1,n2) : n1을 n2로 나눈 나머지 값

문자함수

  • INITCAP(char) : char의 첫문자만 대문자 나머지 소문자
  • LOWER(char) : char를 소문자로
  • UPPER(char) : char을 대문자로
  • CONCAT(char1, char2) : char1 char2를 붙인다.
  • SUBSTR(char, pos,len) : char의 pos번째 문자부터 len길이만큼 잘라서 반환.
  • LTRIM: char1의 좌측부터 char2를 찾아서 삭제후 반환 (한번만 삭제한다.)
  • RTRIM: LTRIM과 비슷. 오른쪽부터 검색을 진행
  • LPAD(char1,n,char2) : char1의 왼쪽부터 char2를 채운다. n은 연산후 총 문자열 자릿수를 의미한다.
  • RPAD(char1,n,char2)  : LPAD와 비슷 , 오른쪽부터 진행
  • REPLACE(char1,char2,char3) : char1에서 char2를 찾아 char3을 반환한다. LTRIM과 달리 여러번 진행한다.
  • LENGTH(char) : char의 길이
  • DECODE(input1, search1 , result1, search2, .. ,default) :  input1을 search1과 비교하여 같은 값이면 result1을 반환하고, 같지 않을 경우 search2를 비교하는 방식을 반복한다. 최종적으로 같은 값이 없으면 default를 반환한다.

날짜함수

  • SYSDATE : 현재 시스템 일자 반환
  • ADD_MONTHS(date,int) : date에 int 수 만큼 월을 더한 날짜 반환
  • MONTHS_BETWEEN(date1,date2) : date1을 기준으로 두 날짜 사이의 개월 수 반환 
  • LAST_DAY(date) : date의 월말일 반환
  • ROUND(date, format) : format에 따라 반올림한 날짜 반환
  • TRUNC(date,format) : format에 따라 잘라낸 날짜 반환
  • NEXT_DAY(date,char) : date기준으로 char에 명시한 요일의 날짜를 반환

변환함수

  • TO_CHAR(char or date , format)  : 숫자나 날짜를 format에 맞는 문자로 변환                                                                                  ex) to_char(sysdate , 'YYYY/MM/DD'), to_char(12345, 'L9,999.99')
  • TO_NUMBER(char,format) : data를 format에 맞는 숫자로 변환
  • TO_DATE(char, format) : char를 format에 맞는 날짜로 변환
  • TO_TIMESTAMP(char,format) : char을 format에 맞는 타임스탬프로 변환

NULL 관련 함수

  • NVL(input1,input2) : input1이 null이면 input2를 반환
  • LNNVL(조건식) : 조건식의 결과가 false이거나 unknown이면 true를 , true이면 false를 반환한다.
  • NULLIF(input1, input2) : input1과 input2가 동일한 값이면 null을 아니면 input1을 반환한다.