본문 바로가기
DB

[MySQL] 날짜 형식 변환 방법

by 세바개님 2023. 3. 11.

MySQL에서 날짜 형식을 변환하는 방법은 여러가지가 있지만, 가장 일반적인 방법으로는 DATE_FORMAT() 함수를 사용하는 것입니다. 이 함수는 DATE 타입의 값을 원하는 형식의 문자열로 변환해줍니다.


1. DATE_FORMAT() 함수


1) DATE_FORMAT() 함수의 구문

DATE_FORMAT(date, format)

 

  • date: DATE 타입의 값 또는 날짜와 시간 값을 가지는 문자열입니다.
  • format: 변환하고자 하는 형식을 나타내는 문자열입니다.

 

2) DATE 타입의 값을 'yyyy-mm-dd' 형식의 문자열로 변환하기

SELECT DATE_FORMAT('2023-03-11', '%Y-%m-%d');

위의 쿼리를 실행하면 '2023-03-11' 문자열이 반환됩니다. 여기서 '%Y-%m-%d'는 날짜를 연도-월-일 형식으로 표시하도록 지정한 것입니다. 다른 형식 문자열은 다음과 같습니다.

  • %Y: 연도를 4자리 숫자로 표시
  • %y: 연도를 2자리 숫자로 표시
  • %m: 월을 2자리 숫자로 표시
  • %d: 일을 2자리 숫자로 표시
  • %H: 시간을 24시간 형식으로 표시
  • %h: 시간을 12시간 형식으로 표시
  • %i: 분을 2자리 숫자로 표시
  • %s: 초를 2자리 숫자로 표시
  • %p: 오전/오후를 나타내는 문자열 (대소문자로 구분됨)


3) 날짜와 시간 값을 'yyyy-mm-dd HH:ii:ss' 형식의 문자열로 변환하기

 

SELECT DATE_FORMAT('2023-03-11 12:34:56', '%Y-%m-%d %H:%i:%s');

위의 쿼리를 실행하면 '2023-03-11 12:34:56' 문자열이 반환됩니다. 여기서 '%H:%i:%s'는 시간을 시:분:초 형식으로 표시하도록 지정한 것입니다. 다른 형식 문자열은 위와 동일합니다.


4) 날짜와 시간 값을 'yyyy-mm-dd 오전/오후 hh:ii:ss' 형식의 문자열로 변환하기

 

SELECT DATE_FORMAT('2023-03-11 12:34:56', '%Y-%m-%d %p %h:%i:%s');

위의 쿼리를 실행하면 '2023-03-11 오후 12:34:56' 문자열이 반환됩니다. 여기서 '%p %h:%i:%s'는 오전/오후를 나타내는 문자열과 12시간 형식으로 시간을 표시하도록 지정한 것입니다. 다른 형식 문자열은 위와 동일합니다.


2. DATE 타입의 값을 문자열로 변환하기


위의 예시에서는 문자열 값을 DATE_FORMAT() 함수에 전달하여 문자열로 변환했습니다. 그러나 DATE 타입의 값을 문자열로 변환하는 방법도 있습니다.

 

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');

위의 쿼리를 실행하면 현재 날짜와 시간이 'yyyy-mm-dd HH:ii:ss' 형식의 문자열로 반환됩니다. 여기서 NOW() 함수는 현재 날짜와 시간 값을 반환합니다.

댓글