Einführung in Datums- und Zeitdatentypen

Zeitreihenanalyse in PostgreSQL

Jasmin Ludolf

Content Developer, DataCamp

Datums- und Zeitdatentypen

  • Datentypen: Date, Time, DateTime

In PostgreSQL:

  • DATE : nur Datumsangaben
  • TIME : Uhrzeit ohne Zeitzone
  • TIMESTAMP : Datum und Uhrzeit ohne Zeitzone
  • TIMESTAMPTZ : TIMESTAMP mit Zeitzone
  • INTERVAL : Zeitspanne zwischen zwei Zeitpunkten

Illustration eines Kalenders und einer Uhr.

Zeitreihenanalyse in PostgreSQL

Datums- und Zeitwerte

  • DATE : JJJJ-MM-TT (ISO-8601-Standard)
  • TIME : HH:MM:SS (Sekunden ggf. Dezimal; 12- oder 24-Stunden-Format)
  • TIMESTAMP : JJJJ-MM-TT HH:MM:SS
  • TIMESTAMPTZ : JJJJ-MM-TT HH:MM:SS+/-HH (+01:00 oder CET)
  • INTERVAL : Beispiel: 1 02:30:04
    • Intervall: 1 Tag, 2 Stunden, 30 Minuten, 4 Sekunden
Zeitreihenanalyse in PostgreSQL

Datum und Zeit in einer Tabelle

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');
Zeitreihenanalyse in PostgreSQL

Datum und Zeit in einer Tabelle

 

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  |
Zeitreihenanalyse in PostgreSQL

Teilweise oder fehlerhafte Daten

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            |
Zeitreihenanalyse in PostgreSQL

Teilweise oder fehlerhafte Daten

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            |
Zeitreihenanalyse in PostgreSQL

Unix-Zeit

  • Unix-Zeit : Sekunden seit der Unix-Epoche
  • Unix-Epoche : 1. Januar 1970 00:00:00, UTC
|unix_time |
|----------|
|1483444800|

Das ist der 3. Januar 2017!

Zeitreihenanalyse in PostgreSQL

Lass uns üben!

Zeitreihenanalyse in PostgreSQL

Preparing Video For Download...