날짜 및 시간 데이터 유형 소개

PostgreSQL을 활용한 시계열 분석

Jasmin Ludolf

Content Developer, DataCamp

날짜 및 시간 데이터 유형

  • Date, Time, DateTime 데이터 유형

PostgreSQL에서는:

  • DATE : 날짜 데이터만 저장
  • TIME : 시간대 없는 시간 정보
  • TIMESTAMP : 시간대 없이 날짜와 시간을 결합
  • TIMESTAMPTZ : 시간대가 있는 TIMESTAMP
  • INTERVAL : 두 시점 사이의 시간

달력과 시계를 보여주는 그림

PostgreSQL을 활용한 시계열 분석

날짜 및 시간 값

  • DATE : YYYY-MM-DD (ISO 8601 국제 표준)
  • TIME : HH:MM:SS (초는 소수점 가능, 12시간제 또는 24시간제)
  • TIMESTAMP : YYYY-MM-DD HH:MM:SS
  • TIMESTAMPTZ : YYYY-MM-DD HH:MM:SS+/-HH (+01:00 또는 CET)
  • INTERVAL : 입력 예시로 1 02:30:04
    • 1일 2시간 30분 4초의 간격
PostgreSQL을 활용한 시계열 분석

테이블 속 날짜와 시간

CREATE TABLE timetable (
    date_info DATE,

time_info TIMESTAMP,
time_with_zone TIMESTAMPTZ,
interval_length INTERVAL);
INSERT INTO timetable(
    date_info,

time_info,
time_with_zone,
interval_length)
VALUES ( 'January 23 2013',
'2023-01-20 18:00:00',
'2023-01-20 18:00:00 EST',
'1 02:03:04');
PostgreSQL을 활용한 시계열 분석

테이블 속 날짜와 시간

 

SELECT *
FROM timetable;

 

| date_info  | time_info           | time_with_zone            | interval_length |
| ---------- | ------------------- | ------------------------- | --------------- |
| 2023-01-20 | 2023-01-20 18:00:00 | 2023-01-20 00:00:00+01:00 | 1 day, 2:03:04  |
PostgreSQL을 활용한 시계열 분석

불완전하거나 잘못된 데이터

INSERT INTO timetable(time_info)
VALUES ('2020-02-20 12:00:00');
SELECT *
FROM timetable;
| date_info  | time_info           | time_with_zone            | interval_length |
| ---------- | ------------------- | ------------------------- | --------------- |
| 2023-01-20 | 2023-01-20 18:00:00 | 2023-01-20 00:00:00+01:00 | 1 day, 2:03:04  |
| null.      | 2020-02-20 12:00:00 | null                      | null            |
PostgreSQL을 활용한 시계열 분석

불완전하거나 잘못된 데이터

INSERT INTO timetable(time_info)
VALUES ('2020-02-20 02:00:00 EST');
SELECT *
FROM timetable;
| date_info  | time_info           | time_with_zone            | interval_length |
| ---------- | ------------------- | ------------------------- | --------------- |
| 2023-01-20 | 2023-01-20 18:00:00 | 2023-01-20 00:00:00+01:00 | 1 day, 2:03:04  |
| null.      | 2020-02-20 02:00:00 | null                      | null            |
PostgreSQL을 활용한 시계열 분석

Unix 시간

  • Unix time : Unix epoch 이후 경과한 초
  • Unix epoch : 1970년 1월 1일 00:00:00, UTC
|unix_time |
|----------|
|1483444800|

이는 2017년 1월 3일입니다!

PostgreSQL을 활용한 시계열 분석

연습해 봅시다!

PostgreSQL을 활용한 시계열 분석

Preparing Video For Download...