SQL Function

두윤기·2023년 2월 8일
0

SQL 함수

> 단일행 함수

숫자함수

  • ABS
    • 절대 값
    • ABS(-12) → 12
  • ROUND
    • 반올림
    • 자릿 수에 -를 적어주면 10, 100, ... 자리수도 가능
    • ROUND(12.345, 2) -- 12.35
      ROUND(12345, -1) -- 12350
  • TRUNC
    • 버림
    • TRUNC(12.345, 2) → 12.34
  • MOD
    • 나눈 나머지
    • MODE(12, 10) → 2
  • CEIL
    • 주어진 숫자와 가장 근접한 큰 정수
    • CEIL(12.345) → 13
  • FLOOR
    • 주어진 숫자와 가장 근접한 작은 정수
    • FLOOR(12.345) → 12
  • POWER
    • 주어진 숫자의 Power
    • POWER(3, 2) → 12

문자 함수

  • UPPER
    • uppercase로 변환
    • SELECT MEMBER_ID, UPPER(MEMBER_ID) AS 대문자 FROM MEMBER;
  • LOWER
    • lowercase로 변환
    • SELECT MEMBER_ID, LOWER(MEMBER_ID) AS 대문자 FROM MEMBER;
  • INITCAP
    • 단어의 initial만 uppercase로 변환
  • LENGTH
    • 문자 길이 반환
  • LENGTHB
    • 문자 바이트 수 반환
  • INSTR
    • 특정 문자의 위치 반환
    • 문자가 포함되어 있지 않으면 0, 포함되어 있으면 1~LENGTH('STRING')
    • SELECT * FROM MEMBER WHERE INSTR(LOWER(MEMBER_ID), LOWER('kh')) > 0;
  • SUBSTR
    • 대상의 시작 위치부터 선택 개수만큼 추출
    • SUBSTR('STRING', 3) -- 3번째 문자부터 끝까지 출력
      SUBSTR('STRING', 3, 2) -- 3번째 문자부터 총 2개 출력
  • SUBSTRB
    • 대상의 시작 위치부터 선택 바이트만큼 추출
  • LPAD/RPAD
    • 빈칸만큼 특정문자로 채움
    • LPAD('ORACLE', 10, '+') -- '++++++++++ORACLE'
  • LTRIM/RTRIM
    • 공백문자 삭제
  • TRIM
    • 양 끝의 특정문자 제거, 특정 문자를 지정하지 않으면 양쪽 공백 제거

날짜 함수

  • SYSDATE
  • MONTHS_BETWEEN
  • ADD_MONTHS
  • NEXT_DAY
  • LAST_DAY

반환 함수

  • TO_CHAR
    • 날짜형과 숫자형을 문자형으로 형 변환
  • TO_DATE
    • 문자형을 날짜형으로 형 변환
  • TO_NUMBER
    • 문자형을 숫자형으로 형 변환

기타 함수

  • NVL(exp1, exp2)
  • NVL2(exp1, exp2, exp3)
  • NULLIF(exp1, exp2)
  • DECODE(exp1, exp2, exp3)

> 그룹 함수(집계함수)

  • COUNT
    • 명시한 COLUMN의 행 개수
    • COLUMN 이름을 직접 명시할 경우 NULL을 제외한 행의 개수를 출력
      • 사용 시 NULL을 포함한 개수
  • SUM
    • NULL 제외한 모든 행의 합
    • SELECT SUM(PRICE) AS 합계, AVG(PRICE) AS 평균 FROM PRODUCT;
  • AVG
    • NULL 제외한 모든 행의 평균
  • MAX
    • NULL 제외한 모든 행에서 최대값
  • MIN
    • NULL 제외한 모든 행에서 최솟값

> GROUP BY 절

> 분석함수

profile
programmerD

0개의 댓글