wisePocket

[MySQL] DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') 본문

Database/MySQL - RDBMS

[MySQL] DATE_FORMAT(HIRE_YMD, '%Y-%m-%d')

ohnyong 2023. 8. 7. 18:51

DATE_FORMAT 테이블에서 Type이 Date인 것들이 나타난다.

틀린 부분이 없다고 생각했는데, 자세히보니 출력되는 날짜의 형식이 달랐다.

DATE_FORMAT을 이용하여 Date타입의 값들을 내가 원하는 포맷으로 출력 할 수 있다.


1. DATE_FORMAT(날짜 , 형식)

DATE_FORMAT(날짜 , 형식) : 날짜를 지정한 형식으로 출력 할 수 있다.
날짜 부분은 날짜 형식을 담고 있는 컬럼명이 들어가면 되며 
형식은 다양하게 존재하는데 다음 처럼 정리한다.
구분기호 역할 구분기호 역할


 %Y


4자리 년도 


%m


숫자 월 ( 두자리 )


 %y


2자리 년도  


%c 


숫자 월(한자리는 한자리) 


 %M


긴 월(영문)
 
%d


일자 (두자리) 


 %b


짧은 월(영문) 


 %e


일자(한자리는 한자리) 


 %W


긴 요일 이름(영문) 
 
%I
 
시간 (12시간)
 
%a


짧은 요일 이름(영문) 
 
%H


시간(24시간) 


%i


분 


 %r


hh:mm:ss AM,PM 
 
%T


hh:mm:SS


 %S



select ..., hire_ymd, ... from doctor
위 날짜 컬럼 부분의 select 쿼리문을 다음 처럼 변경했다.
-- 코드를 입력하세요
select * from doctor;

#이름아이디과고용날짜
select dr_name, dr_id, mcdp_cd, hire_ymd from doctor;

#MCDP_CD가 CS 거나 GS인 (조건)
select dr_name, dr_id, mcdp_cd, DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') AS HIRE_YMD from doctor
    where mcdp_cd = "cs" or mcdp_cd = "gs" 
    #고용일기준내림 d, 같으면 name 내림
    order by  hire_ymd desc, dr_name asc;

주의 할 것은 %m과 %M은 다른 것 처럼 대문자에 특별한 의미들이 있는 점을 주의하자.