TGViewer
Системный аналитик с нуля | Альбина Гараева Системный аналитик с нуля | Альбина Гараева @garaeva_it · 1.09K subscribers
Post #562 594
Дата и время – одна из таких тем, которая легко может запутать начинающего системного аналитика при проектировании базы данных.

Ведь дата может быть представлена в разных форматах:

12.08.2024
8/12/2024
12/8/2024
12 августа 2024
И так далее.

Ну и какой тогда здесь закладывать тип данных?

Классно, если вы задаетесь этим вопросом, а не просто пишите date для любой даты.

А чем так плох тип данных date? - спросите вы.


В некоторых случаях использование date вполне оправдано, да и в памяти он занимает всего 4 байта, но важно понимать, что в этом случае точность будет до дня – а не в часах. Например, если нам нужно просто знать дату – 12.08.2024, то это ок, но если конкретное время с указанием часового пояса, то нужно использовать другой тип данных.

Какой?
Будем с этим разбираться далее.

Кстати, когда мы вводим значение, мы обязательно заключаем их в одинарные кавычки.

И пару слов про часовые пояса:
▪️часовой пояс записывается в виде знака «+» или «-», означающего смещение часового пояса, после него нужна цифра, указывающая на сколько часов смещение

▪️по умолчанию timestamp подразумевает timestamp without time zone (время без часового пояса). Если вам нужно указать часовой пояс, то нужно явно прописать timestamp with time zone (время с указанием часового пояса), чтобы избежать такой ошибки, когда хотим указать часовой пояс, но пишем

TIMESTAMP '2024-08-12 11:03:45+02'

т.к. PostgreSQL распознает это, как тип timestamp without time zone. Вместо этого нужно написать

TIMESTAMP WITH TIME ZONE '2024-08-12 11:03:45+02'.

▪️Внутри БД timestamp with time zone всегда хранятся в UTC. Если вы вводите значение с явно указанным часовым поясом, оно автоматически переводится в UTC с учётом этого пояса. Если же часовой пояс не указан, то используется часовой пояс, заданный в системных настройках (TimeZone). В этом случае время также переводится в UTC с учётом соответствующего смещения.

Завтра рассмотрим тему про локали, а потом чуть больше примеров для лучшего понимания темы.

Дайте огней, если интересно🔥
  • 🔥 18
  • 👍 3
  • ❤ 2
More from @garaeva_it
  1. Jun 21, 20265 продуктов, которые закроют ваши главные пробелы Друзья, собрала для вас всё в одном мест…
  2. Jun 19, 2026Дорогие студенты, благодарю вас за ваши прекрасные #отзывы Делюсь отзывом Алии, она работа…
  3. Jun 17, 2026Чтобы вы перестали гадать и начали проектировать логику взаимодействия осознанно, я открыв…
  4. Jun 15, 2026Надо ли системному аналитику разбираться в проектировании интерфейсов? Не раз слышала от с…
  5. Jun 13, 2026Вчера я писала о том, как незнание процессов превращает аналитика просто в создателя ТЗ, к…
  6. Jun 12, 2026«ТЗ готово, но задача не двигается»: почему аналитику критично понимать процессы разработк…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →