본문 바로가기

직장인 자기계발/SQL

SQL : 단일 행 함수

728x90

 1. 데이터 타입 

저장 데이터 데이터 타입 설명 
문자 CHAR(n) n 크기만큼 고정 길이의 문자 타입을 저장
문자 VARCHAR2(n) n크기만큼 가변 길이의 문자 타입을 저장
숫자 NUMBER(p, s) 숫자 타입을 저장(p : 정수 자릿수, s : 소수 자릿수)
날짜 DATE 날짜 타입을 저장

 

 2. 문자 타입 함수 

함수 설명 결과
LOWER 값을 소문자로 변환 LOWER('QWER') qwer
UPPER 값을 대문자로 변환  UPPER('qwer) QWER
INITCAP 첫 번째 글자만 대문자로 변환  INITCAP('qwer') Qwer
SUBSTR 문자열 중 일부분을 선택  SUBSTR('QWER',1,2) QW
REPLACE 특정 문자열을 찾아 대체  REPLACE('QWER','Q','T') TWER
CONCAT 두 문자열 연결  CONCAT('Q','W') QW
LENGTH 문자열 길이 구하기  LENGTH('QWER') 4
INSTR 명명된 문자의 위치 구하기 INSTR('QWER','Q') 1
LPAD 왼쪽부터 특정 문자로 자리 채우기 LPAND('QWER',6,'!') !!QWER
RPAD 오른쪽부터 특정 문자로 자리 채우기 RPAD('QWER',6,'!') QWER!!
LTRIM 주어진 문자열의 왼쪽 문자 지우기  LTRIM('QWER','QW') ER
RTRIM 주어진 문자열의 오른쪽 문자 지우기  RTRIM('QWER','R') QWE

 

 3. 숫자 타입 함수 

함수 설명 결과
ROUND 숫자를 반올림  ROUND(123.42,0) 123
TRUNC 숫자를 절삭  TRUNC(123.42,1) 123.4
MOD 나누기 후 나머지 구하기 MOD(15,2) 1
CEIL 숫자를 정수로 올림  CEIL(123.42) 124
FLOOR 숫자를 정수로 내림 FLOOR(123.42) 123
SIGN 양수(1), 음수(-1), 0을 구분하여 출력 SIGN(15) 1
POWER 거듭제곱 출력 POWER(2, 3) 8
SQRT 제곱근 출력 SQRT(4) 2

 

 4. 날짜 함수 

날짜 함수 설명
MONTHS_BETWEEN 두 날짜 사이의 월수 계산 MONTHS_BETWEEN
(SYSDATE,HIRE_DATE)
ADD_MONTHS 월에 날짜 더하기 ADD_MONTHS(HIRE_DATE,5)
NEXT_DAY 명시된 날짜부터 돌아오는 요일에 대한
날짜 출력 
(SUNDAY:1 ,MONDAY : 2....)
NEXT_DAY(HIRE_DATEE,1)
LAST_DAY 월의 마지막 날 계산 LAST_DAY(HIRE_DATE)
ROUND 날짜의 가장 가까운 연도 또는 월로 반올림 ROUND(HIRE_DATE,'MONTH')
TRUNC 날짜를 가장 가까운 연도 또는 월로 절삭 TRUNC(HIRE_DATE,'MONTH')

 

 5. 일반 함수 

함수 설명
NULL, NVL NULL값을 다른 값으로 변환해준다 NULL( 열 이름, 변환값)
NVL(열 이름, 변환값)
DECODE 데이터값이 조건값과 일치시 치환값 출력,
불일치시 기본값 출력
DECODE(열 이름, 조건 값, 치환값, 기본값)
CASE DECODE와 유사하나 조건식이 여러 개일 때 사용 CASE
      WHEN 조건 1 THEN 출력 값1
      WHEN 조건 2 THEN 출력 값 2
      ELSE 출력 값3
END
RANK 공통 순위를 출력하고
다음 순위는 공통 순위만큼 건너뛰어 출력
RANK() OVER (ORDER BY 열 이름)
DENSE_RANK 공통 순위 출력하고 순위 건너뛰지 않고
바로 다음 순위 출력
DENSE_RANK(ORDER BY 열 이름)
ROW_NUMBER 공통 순위 없이 출력  ROW_NUMBER(ORDER BY 열 이름)

'직장인 자기계발 > SQL' 카테고리의 다른 글

SQL : 조인  (0) 2021.01.22
SQL : 그룹 함수  (0) 2021.01.21
SQL : DDL (CREATE / ALTER/TRUNCATE/DROP)  (0) 2021.01.18
SQL : DML (INSERT/UPDATE/DELETE) 방법  (0) 2021.01.17
SQL : 서브쿼리(sub query)  (0) 2021.01.16