개발자 항해
단일 행 함수 - 3. 변환함수, 제어 흐름 함수, 시스템 정보 함수 본문
1. 변환 함수
1) DATE_FORMAT( 날짜, 형식 ) : 날짜를 형식에 맞게 출력하는 함수
형식 | 설명 |
%Y | 년도를 4자리 숫자로 표현 |
%y | 년도를 2자리 숫자로 표현 |
%M | 월을 영문 풀네임으로 표현 |
%b | 월을 영문 약자로 표현 |
%m | 월을 2자리 숫자로 표현 |
%c | 월을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현 |
%d | 일을 2자리 숫자로 표현 |
%e | 일을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현 |
%W | 요일을 영문 풀네임으로 표현 |
%a | 요일을 영문 약자로 표현 |
%H | 시간을 24시간으로 표현 |
%h | 시간을 12시간으로 표현 |
%k | 시간을 24시간으로 표현하되 10보다 작을 경우 한자리로 표현 |
%l | 시간을 12시간으로 표현하되 10보다 작을 경우 한자리로 표현 |
%i | 분을 2자리 숫자로 표현 |
%s | 초를 2자리 숫자로 표현 |
2) CAST(값 AS 데이터타입) : 값을 지정된 데이터타입으로 변환하는 함수
데이터 타입 | 데이터 타입 |
BINARY | CHAR (문자형) |
SIGNED (부호 있는 정수형) | UNSIGNED (부호 없는 정수형) |
DECINAL (숫자형) | DOUBLE (숫자형) |
FLOAT (숫자형) | DATETIME (날짜형) |
DATE (날짜형) | TIME (시간) |
2. 제어 흐름 함수
1) IF(논리식, 참일때 값, 거짓일때 값) : 논리식이 참이면 참일 때 값을 출력하고 거짓이면
거짓일때 값을 출력하는 함수
2) IFNULL(수식1, 수식2) : 수식1이 NULL이 아니면 수식1이 반환되고, 수식1이 NULL이면
수식 2가 반환 되는 함수
- 수당을 받는 사원과 받지 않는 사원 모두 연봉이 정상적으로 출력될수있도록 작성해보자.
3) NULLIF(수식1, 수식2) : 수식1과 수식2가 같으면 NULL을 반환하고, 다르면 수식1을 반환하는 함수
4) CASE 비교값 WHEN 값1 THEN 결과1
WHEN 값2 THEN 결과2
.... ......
ELSE 기본값
END
★ SQL구문에서 if-then-else의 논리를 적용할 수 있는 연산자
함수는 아니나 제어 흐름 함수와 함께 정리해두기
3. 시스템 정보 함수
1) USER() , CURRENT_USER(), SESSION_USER() : 현재 사용자 정보를 반환하는 함수
2) DATABASE(), SCHEMA() : 현재 데이터베이스 또는 스키마 정보를 반환하는 함수
3) VERSION() : 현재 MySQL 버전을 반환하는 함수
'DB > MySQL' 카테고리의 다른 글
단일 행 함수 - 2. 숫자함수, 날짜함수 (0) | 2022.07.26 |
---|---|
단일 행 함수 - 1. 문자함수 (0) | 2022.07.26 |
Group by 절 (+ Having절) (0) | 2022.07.25 |
그룹함수 (0) | 2022.07.25 |
서브쿼리(subquery) - 2. 다중행 서브쿼리 (0) | 2022.07.22 |