Ứng dụng web của tôi lưu trữ tất cả dấu thời gian trong UTC mà không có múi giờ. Tôi có một kịch bản shell/psql trả về một danh sách các thông tin đăng nhập gần đây, và tôi muốn kịch bản đó hiển thị thời gian đăng nhập trong múi giờ địa phương của máy chủ (có thể thay đổi tùy thuộc vào nơi máy chủ đang ở và tiết kiệm ánh sáng ban ngày).Bù giờ múi giờ địa phương trong PostgreSQL
Để có được một khoảng thời gian đại diện cho sự khác biệt giữa các múi giờ máy chủ cơ sở dữ liệu của tôi và UTC, Tôi hiện đang sử dụng hack này:
SELECT age(now() at time zone 'UTC', now());
đó làm việc, nhưng là có một cách đơn giản hơn?
Có tham số cấu hình máy chủ được gọi là "múi giờ" trả về chuỗi múi giờ hợp lệ, nhưng tôi không nghĩ rằng có thể truy cập các tham số đó trong truy vấn. (Tôi đoán đó là một câu hỏi riêng, nhưng một câu trả lời cho nó sẽ giải quyết vấn đề múi giờ.)
Cảm ơn cho câu hỏi. Tôi đã thêm một đoạn giải thích lý do tại sao tôi muốn có sự khác biệt. – TimH