Автор разбирает классическую ловушку с
AT TIME ZONE в Postgres. Оператор ведёт себя по-разному в зависимости от типа аргумента.Для
timestamp без зоны он трактует значение как время в указанной зоне и возвращает timestamptz. Для timestamptz — наоборот, переводит в эту зону и отбрасывает информацию о ней.Из-за этого двойное применение даёт молча неверный результат, без ошибки и предупреждения. Проверяй фактический тип колонки и храни моменты времени в
timestamptz.🔗 Подробнее
@nuancesprog #Data #Postgres
