5. DB/4-1. MySQL DBMS
MySQL - [ 단일 행 함수 (변환 함수 / 제어 흐름 함수 / 시스템 정보 함수)]
yunyj99
2022. 4. 19. 00:10
1. 변환함수
DATE_FORMAT(날짜, 형식) | 날짜를 형식에 맞게 출력하는 함수 |
더보기

Ex1 결과

Ex2 결과
%Y : 년도를 4자리 숫자로 표현
%y : 년도를 2자리 숫자로 표현
%M : 월을 영문 풀네임으로 표현
%b : 월을 영문 약자로 표현
%m : 월을 2자리 숫자로 표현
%c : 월을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현
%d : 일을 2자리 숫자로 표현
%e : 일을 2자리 숫자로 표현하되 10보다 작을 경우 한자리로 표현
%W : 요일을 영문 풀네임으로 표현
%a : 요일을 영문 약자로 표현
%H : 시간을 24시간으로 표현
%h : 시간을 12시간으로 표현
%k : 시간을 24시간으로 표현하되 0보다 작을 경우 한자리로 표현
%l (소문자 엘) : 시간을 12시간으로 표현하되 0보다 작을 경우 한자리로 표현
%i : 분을 2자리 숫자로 표현
%s : 초를 2자리 숫자로 표현
Ex1)
select date_format(now( ), '%Y-%M-%d') as "Now";
Ex2)
select date_format(now(), '%Y/%M/%d %H:%i:%s') as "Now";


CAST(값 AS 데이터타입) | 값을 지정된 데이터타입으로 변환하는 함수 |
더보기

Ex1 결과

Ex2 결과
데이터 타입 | 데이터 타입 |
BINARY | CHAR (문자형) |
SIGNED (부호 있는 정수형) | UNSIGNED (부호 없는 정수형) |
DECINAL (숫자형) | DOUBLE (숫자형) |
FLOAT (숫자형) | DATETIME (날짜형) |
DATE (날짜형) | TIME (시간) |
Ex1)
select cast("123" as signed), cast("-123.45" as signed),
cast("123" as unsigned), cast("123.45" as unsigned);
Ex2)
select cast('2022/03/18' as date) as '날짜1', cast('2022@03@18' as date) as '날짜2';


2. 제어 흐름 함수
IF(논리식, 참일 때 값, 거짓일 때 값) | 논리식이 참이면 참일 때 값을 출력하고 거짓이면 거짓일 때 값을 출력하는 함수 |
IFNULL(수식1, 수식2) | 수식1이 NULL이 아니면 수식1이 반환되고, 수식1 이 NULL이면 수식2가 반환되는 함수 |
NULLIF(수식1, 수식2) |
수식1과 수식2가 같으면 NULL을 반환하고, 다르면 수식1을 반환하는 함수 |
더보기

Ex1 결과

Ex2 결과

Ex3 결과
Ex1)
select if(100>200, '참이다', '거짓이다') as "결과";
Ex2)
select ifnull(null, '널이군요') as "결과1", ifnull(100, '널이군요') as "결과2";
Ex3)
select nullif(100, 100) as "결과1", nullif(100, 200) as "결과2";



CASE 비교값 WHEN 값1 THEN 결과1 WHEN 값2 THEN 결과2 ... ... ELSE 기본값 END |
- SQL구문에서 if-then-else의 논리를 적용할 수 있는 연산자 - 함수는 아니나 제어 흐름 함수와 함께 정리해 두기 |
더보기

Ex 결과
Ex)
select case 10 when 1 then '일' when 5 then '오' when 10 then '십' else '모름' end as 'case예제';

3. 시스템 정보 함수
USER( ) CURRENT_USER( ) SESSION_USER() |
현재 사용자 정보를 반환하는 함수 |
DATABASE( ) SCHEMA( ) |
현재 데이터베이스 또는 스키마 정보를 반환하는 함수 |
VERSION( ) | 현재 MySQL 버전을 반환하는 함수 |
더보기

Ex1 결과

Ex2 결과

Ex3 결과
Ex1)
select user( ), current_user( ), session_user( );
Ex2)
select database( ), schema( );
Ex3)
select version( );


