Производительность Datetime2 и String в SQL Server - PullRequest
0 голосов
/ 22 февраля 2019

В чем преимущества наличия столбца типа datetime2 в SQL Server вместо строки?Очевидно, что строки гораздо более гибкие.Есть ли преимущества производительности при выполнении запросов?

Я проектирую базу данных, в которой все записи добавляются с помощью функций на другом языке, и поэтому не беспокойтесь о том, что значение, не отформатированное как дата, будет добавлено в рассматриваемый столбец.,Я подумываю о том, чтобы создать строку типа столбца, чтобы мне было легче разбирать их при запросах.Когда они добавляются в базу данных, они преобразуются из формата даты-времени Python, который по договоренности имеет шесть цифр точности в долях секунды, в формат даты-времени2, который имеет семь.Создание столбца типа string предотвратит это, но я беспокоюсь о проблемах производительности, которые могут возникнуть из-за отсутствия datetime2.

1 Ответ

0 голосов
/ 22 февраля 2019

Datetime2 (и другие типы даты / времени):

  • сэкономит вам место на диске и в конечном итоге увеличит производительность.
  • позволит вам легко выполнять математику по дате без необходимости создавать процедуры, которые необходимо будет определить, если в феврале будет 28 или 29 дней (просто для примера).
  • имеют свои встроенные ограничения, поэтому вам не нужно беспокоиться о том, что кто-то вставит неверную дату.
  • может быть легко преобразован в различные форматы
  • может извлекать свои части, включая недели, будни или дни года.
  • и т. Д. *
...