DECODE(A,1,2,B) # A가 1이면 2, 아니면 B.
DECODE(A, B, '1', C, '2', '3') # A 가 B 일 경우 '1'을, A 가 C 일 경우 '2', 둘 다 아닐 경우 '3'
ROUND(N,M): N을 M자리까지 반올림, M 생략시 소수점 위로 반올림
CEIL(N): N보다 큰 가장 작은 정수
FLOOR(N): N보다 작은 가장 큰 정수
TRUNC(N,M): N에서 M자리 미만을 버린다.
몫과 나머지 구하기
# 정수 + 소수점 없이
SELECT 10 / 3 AS quotient
, 10 % 3 AS remainder
# 정수 + 소수점 있이
SELECT 10.0 / 3
, CONVERT(float, 10) / 3
# 실수
SELECT FLOOR(10.1 / 3) AS quotient
, 10.1 % 3 AS remainder
POWER(N,M): N의 M제곱
SQRT(N): N의 제곱근
ABS(N): N의 절대값
날짜 + 숫자 N: 날짜에 N일 더한 날짜
날짜 - 숫자 N: 날짜에 N일 뺀 날짜
날짜 + N/24: 날짜에 N시간을 더한 날짜
날짜 - 날짜: 두 날짜 사이 일수
DATEDIFF(expr, expr2) - 두 기간 사이의 일수 계산
TIMEDIFF(expr, expr2) - 두 기간 사이의 시간 계산
PERIOD_DIFF(P1, P2) - 두 기간 사이의 개월 수 계산
TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2) - 두 기간 사이의 시간 계산
SELECT TIMESTAMPDIFF(MONTH,'2021-02-01','2022-03-01');
-> 13
SELECT TIMESTAMPDIFF(YEAR,'2021-02-01','2022-03-01');
-> 1
SELECT TIMESTAMPDIFF(HOUR,'2022-02-01','2022-02-03');
-> 48
# MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR
to_char('2018/12/27', 'YYYY/MM/DD')
to_char(sysdate, 'YYYY-MM-DD:HH24:MI:SS')
TO_DATE: 데이터를 날짜형으로 변환
TO_NUMBER: 데이터를 숫자로 해석
INITCAP(): 첫 문자만 대문자 치환
UPPER(): 전체 대문자 치환
LOWER(): 전체 소문자 치환
SUBSTR(원본문자열 혹은 컬럼, 시작위치, 추출개수)
INSTR(추출 문자열 또는 컬럼, 찾고자하는 문자열, 시작위치, 반복번호):
instr('ab@cd@ef','@',1,1) # 첫 번째 발견되는 @의 위치
instr('abcabcabc', 'c', -3,1) # 역방향 스캔
substr('abcabcabc', -3, 3) # 정방향 스캔
LPAD(추출 문자열 또는 컬럼, 만들 총 자리수, '왼쪽에 채울 문자')
RPAD(추출 문자열 또는 컬럼, 만들 총 자리수, '오른쪽에 채울 문자')
중간에 있는 문자는 제거할 수 없고, 오로지 왼쪽 혹은 오른쪽에 있는 특정 문자만 제거 가능. 제거하려는 특정 문자가 아닌 다른 문자가 스캔되면 제거 과정을 멈춤.
LTRIM(추출 문자열 또는 컬럼, '제거할 문자')
RTRIM(추출 문자열 또는 컬럼, '제거할 문자')
TRIM(추출 문자열 또는 컬럼): 공백 제거
REPLACE('문자열 또는 컬럼', '찾을 문자열', '바꿀 문자열'): 단어 단위 치환
TRANSLATE ('문자열 또는 컬럼', '찾을 문자열', '바꿀 문자열'): 문자의 1:1 치환
translate('abc', 'ab', '12'), # a,b의 짝꿍이 각각 1,2로 있으므로 제대로 치환
translate('abc','ab', '1'), # b의 짝꿍이 없으므로 삭제
translate('abc','a', '12') # 2의 짝꿍이 없으므로 무시됨
LENGTH(): 문자열 길이
LENGTHB(): 문자열 바이트 수
CONCAT(): 문자열 합쳐주는 함수
https://gent.tistory.com/515
https://ponyozzang.tistory.com/697
https://data-make.tistory.com/77
https://data-make.tistory.com/6