MySQL

MySQL - 날짜 데이터를 저장하는 데이터 타입: date, time, datetime, timestamp

Cong_S 2022. 5. 16. 17:45

파이썬에서와 마찬가지로  MySQL 에서도 날짜를 표시하는 데이터는 매우 중요하다.

종류와 활용법에 대해 알아보자.

 

기본적으로 모양은 파이썬의 그것과 비슷하다.

-- 파이썬의 date, time, datetime
-- date YYYY-MM-DD
-- time HH:MM:SS
-- datetime YYYY-MM-DD HH:MM:SS

--데이터를 저장할 떼 컬럼의 정보를 time , date, datetime 으로 
--설정하고 문자열로 형식에 맞게 입력하면 자동으로 시간 데이터로 입력되게 된다.

예시로 들 테이블의 모습

1. date 

date는 날짜만을 표시하는 방법으로 YYYY-MM-DD 모습을 가지고 있다.

2. time 

time 은 HH:MM:SS 의 모습을 하고 있다.

3. datetime

datetime은 YYYY-MM-DD HH:MM:SS 의 모습으로 date와 time 을 합친 형태이다.

4. timestamp

1970년 1월 1일 자정을 기준으로 초단위로 누적되어온 시간이다. 컴퓨터가 이해하기에 매우 편리한 시간으로 기준이 되는 경우가 많으니 꼭 알아두자.

 


-- 현재 시간과 관련된 함수 3개, curdate() , curtime(), now()]
select curdate();

select curtime();

select now();

현재 날짜, 현재 시간, 현재 데이터타임을 불러오는 함수들이다.

insert into people2
(name, birthdate, birthtime, birthdt)
values
('Harry', curdate(), curtime(), now());

 

 

다음은 date 데이터에서 연, 월, 일 부분만 가져오는 방법이다.

select name, year(birthdate) from people2;
select name, month(birthdate) from people2;
select name, day(birthdate) from people2;

 

 

다음은 date 데이터에서 요일을 나타내주는 방법이다. 

select name, dayofweek(birthdate) from people2;

다음은 시간 데이터에서 시 분을 가져오는 방법이다.

select name, hour(birthtime) from people2;

select name, minute(birthtime) from people2;