टाइम ज़ोन जानकारी के साथ काम करना

PostgreSQL में Time Series Analysis

Jasmin Ludolf

Content Developer, DataCamp

टाइम ज़ोन डेटा

  • TIMESTAMP : टाइम ज़ोन के बिना तारीख और समय

    • एक ही टाइम ज़ोन में काम हो तो ठीक
    • सभी समय UTC में
  • TIMESTAMPTZ : टाइम ज़ोन सहित तारीख और समय

अलग-अलग समय दिखाती चार घड़ियों का चित्रण.

PostgreSQL में Time Series Analysis

टाइम ज़ोन नाम

SELECT * FROM pg_timezone_names;
| name             |abbrev|utc_offset|is_dst|
|------------------|------|----------|------|
|Africa/Abidjan    |GMT   |  00:00:00|false |
|Africa/Accra      |GMT   |  00:00:00|false |
|Africa/Addis_Ababa|EAT   |   3:00:00|false |
...
  • is_dst : क्या स्थान daylight savings अपना रहा है
PostgreSQL में Time Series Analysis

टाइम ज़ोन दिखाएँ

SHOW TIMEZONE;
|TimeZone       |
|---------------|
|Europe/Brussels|
PostgreSQL में Time Series Analysis

टेबल में टाइम ज़ोन डेटा

  • datetimes टेबल में ये दो फ़ील्ड हैं:
    • datetime : TIMESTAMP
    • datetimetz : TIMESTAMPTZ
INSERT INTO datetimes (datetime, datetimetz)
VALUES('2023-01-03 12:00:00','2023-01-03 12:00:00');
|datetime           |datetimetz               |
|-------------------|-------------------------|
|2023-01-03 12:00:00|2023-01-03 12:00:00+01:00|
PostgreSQL में Time Series Analysis

डेटा टाइप सत्यापित करें

  • pg_typeof(field_name): फ़ील्ड का डेटा टाइप जाँचें
SELECT
    pg_typeof(datetime) AS "type of(datetime)", 
    pg_typeof(datetimetz) AS "type of(datetimetz)"
FROM datetimes;
|type of(datetime)          |type of(datetimetz)     |
|---------------------------|------------------------|
|timestamp without time zone|timestamp with time zone|
PostgreSQL में Time Series Analysis

टाइम ज़ोन जानकारी का उपयोग

INSERT INTO datetimes (datetime, datetimetz)
VALUES('2023-01-03 12:00:00+00','2023-01-03 12:00:00+00');
SELECT * FROM datetimes;
|datetime           |datetimetz               |
|-------------------|-------------------------|
|2023-01-03 12:00:00|2023-01-03 12:00:00+01:00|
|2023-01-03 12:00:00|2023-01-03 13:00:00+01:00|
PostgreSQL में Time Series Analysis

टाइम ज़ोन जानकारी जोड़ना

  • AT TIME ZONE: टाइम ज़ोन जोड़ें, बदलें, या हटाएँ
    • TIMESTAMP को TIMESTAMPTZ में और उल्टा कन्वर्ट करें

टाइम ज़ोन जोड़ना:

SELECT 
    TIMESTAMP '2020-12-31 23:59:59' AT TIME ZONE 'Europe/London' AS added;
|added                    |
|-------------------------|
|2021-01-01 00:59:59+01:00|

यह क्वेरी: टाइमस्टैम्प को इंटरप्रेट करती है, TIMESTAMPTZ बनाती है, डिफ़ॉल्ट दिखाती है

PostgreSQL में Time Series Analysis

टाइम ज़ोन बदलना और हटाना

SELECT 
    '2020-12-31 23:59:59+00'::TIMESTAMPTZ AT TIME ZONE 'Europe/Paris' 
    AS shifted;
|shifted            |
|-------------------|
|2021-01-01 00:59:59|

यह क्वेरी: टाइमस्टैम्प को चुने हुए टाइम ज़ोन में शिफ्ट करती है, टाइम ज़ोन टैग हटाती है

PostgreSQL में Time Series Analysis

अभ्यास करते हैं!

PostgreSQL में Time Series Analysis

Preparing Video For Download...