SQL 함수

강희철·2022년 1월 6일
0

SQL

목록 보기
4/9

함수란?

수학, 알고리즘에도 함수가 있듯, SQL에도 함수가 존재한다.

함수란 어떠한 값 x 를 f(x)에 대입하였을때 도출되는 y 값을 얻을 수 있게 해준다.

ex) f(1+x) = y 일때 x 가 4이면 y 는 5

함수를 제대로 알아가기전에 데이터 타입을 알아보자

저장 데이터 데이터 타입 설명
문자 CHAR( n ) n 크기만큼 고정 길이의 문자 타입을 저장한다.
최대 2,000 바이트 (byte)까지 저장할 수 있다.
문자 VARCHAR( n ) n 크기만큼 가변 길이의 문자 타입을 저장한다.
최대 4,000 바이트 (byte)까지 저장할 수 있다.
숫자 INT ( p , s ) 숫자 타입을 저장한다
날짜 DATE 날짜 타입을 저장한다.

단일 행 함수

단일 행 함수의 특징

  • 각 행에 대해 수행.
  • 데이터 타입에 맞는 함수를 사용.
  • 행별로 하나의 결과를 반환
  • SELECT, WHERE, ORDER BY 절 등에서 사용 가능
  • 중첩 사용가능

- 문자 타입 함수

함수 설명 예시 결과
LOWER 값을 소문자로 변환 LOWER ( 'ABCD' ) abcd
UPPER 값을 대문자로 변환 UPPER ( 'abcd' ) ABCD
INITCAP 첫번째 문자만 대문자로 변환 INITCAP ( 'abcd' ) Abcd
SUBSTR 문자열 일부만 선택 SUBSTR ( 'ABCD' , 1 , 2 ) AB
REPLACE 특정 문자열을 변환 REPLACE ( 'ABCD' , 'A' , 'Z' ) ZBCD
CONCAT 문자열을 연결 CONCAT ( 'AB' , 'CD' ) ABCD
LENGTH 문자열의 길이를 반환 LENGTH ( 'ABCD' ) 4
INSTR 구하는 문자열의 위치를 반환 INSTR ( 'ABCD' , 'C' ) 3
LPAD 왼쪽부터 특정문자로 빈공간 채움 LPAD ( 'ABCD', 6, '*' ) **ABCD
RPAD 오른쪽부터 특정문자로 빈공간 채움 RPAD ( 'ABCD', 6, '*' ) ABCD**
LTRIM 주어진 문자열의 왼쪽문자들을 지움 LTRIM ( 'ABCD', 'B' ) CD
RTRIM 주어진 문자열의 오른쪽문자들을 지움 RTRIM ( 'ABCD', 'B' ) A

- 숫자 타입 함수

함수 설명 예시 결과
ROUND 숫자를 반올림 적용 ROUND( 15.331 ) 15
TRUNC 숫자를 자른다.
1은 소수점 둘째 자리
TRUNC( 15.331 , 1 ) 15.31
MOD 나누기 후 나머지를 구한다 MOD( 15 , 2 ) 1
CEIL 소수 올림 CEIL( 15.35 ) 16
FLOOR 소수 내림 CEIL( 15.35 ) 15
SIGN 양수 (1), 음수 (0) , 0 인지 구분 SIGN( 15 ) 1
POWER 거듭 제곱을 출력 POWER( 2, 3 ) 8
SQRT 제곱근을 출력 SQRT( 4 ) 2

- 날짜 타입 연산

날짜 연산 설명 반환 값
Date + Number 날짜에 일수를 더한다 Date
Date - Number 날짜에 일수를 뺀다 Date
Date - Date 날짜에서 날짜를 뺀다 Date
Date + Number / 24 날짜에 시간을 더한다. 시간은 24로 나누어 더한다 Date

- 날짜 타입 함수

함수 설명 예시 결과
DATEDIFF 두 날짜 사이의 일수를 계산한다. DATEDIFF('2022-01-06','2021-01-06') 365
DATE_ADD 날짜에 특정 일 / 월 / 년 을 더한다. DATE_ADD('2022-01-06' , INTERVAL 1 DAY) 2022-01-07
DATE_SUB 날짜에 특정 일 / 월 / 년 을 뺀다. DATE_SUB('2022-01-06' , INTERVAL 1 DAY) 2022-01-05

0개의 댓글