時間:2024-02-14 10:19作者:下載吧人氣:22
PostgreSQL 提供兩種存儲時間戳的數據類型: 不帶時區的 TIMESTAMP 和帶時區的 TIMESTAMPTZ。
TIMESTAMP 數據類型可以同時存儲日期和時間,但它不存儲時區。這意味著,當修改了數據庫服務器所在的時區時,它里面存儲的值不會改變。
TIMESTAMPTZ 數據類型在存儲日期和時間的同時還能正確處理時區。PostgreSQL 使用 UTC 值來存儲 TIMESTAMPTZ 數據。在向 TIMESTAMPTZ 字段插入值的時候,PostgreSQL 會自動將值轉換成 UTC 值,并保存到表里。當從一個 TIMESTAMPTZ 字段查詢數據的時候,PostgreSQL 會把存儲在其中的 UTC 值轉換成數據庫服務器、用戶或當前連接所在的時區。
TIMESTAMP 和 TIMESTAMPTZ 都使用8字節存儲空間。如下所示:
SELECT
typname,
typlen
FROM
pg_type
WHERE
typname ~ ‘^timestamp’;
typname | typlen
————-+——–
timestamp | 8
timestamptz | 8
(2 rows)
網友評論