Я бы сказал, что лучший метод для приложения, которое охватывает много часовых поясов, - это прекращение использования типа данных DATE и начало использования TIMESTAMP с типом данных TIMEZONE.
Я не говорю, что это легко, просто говорю, что это, вероятно, лучшая практика по нескольким причинам.
Главное, что это устраняет любую неопределенность. Если вы используете DATE, никто не может сказать, на основании чего было рассчитано это значение. Ты знаешь. Возможно, у вас есть комментарий к колонке (в идеале), но, возможно, не заметили. Если это TIMESTAMP с типом данных TIMEZONE, вы прибили конкретный момент времени независимо от моих локальных часов.
Но это предполагает, что вы можете изменить схему базы данных, что вы, вероятно, не можете. Так что это служит предупреждением для вашего следующего столбца даты.