В каком формате удобно хранить время

«В каком формате удобно хранить время» — вопрос из категории Базы данных, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для хранения времени в Go удобно использовать тип time.Time из стандартного пакета time. Он предоставляет:

  • Точность до наносекунд
  • Поддержку временных зон
  • Методы для манипуляций и форматирования

Пример:

import "time"

func main() {
    now := time.Now() // текущее время
    future := now.Add(24 * time.Hour) // добавить 24 часа
    formatted := now.Format("2006-01-02 15:04:05") // форматирование
}

Для хранения в БД или передачи по сети лучше использовать:

  • Unix timestamp (time.Unix()) для целых секунд
  • RFC3339 (ISO 8601) для строкового представления
  • time.Time напрямую, если драйвер БД поддерживает