Мне нужно хранить данные в формате месяц-месяц/год в базе данных SQL Server. 01 - 12/2014 означает, например, период с января 2014 года по декабрь 2014 года. Должен ли я использовать тип данных varchar или это можно сделать с типом данных datetime?
возможно ли хранить дату и время в формате m - m / Y с помощью SQL Server
comment
Используйте два столбца и сохраните дату начала и окончания. Игнорируйте дневную часть, и вы будете золотыми.
- person hd1   schedule 26.08.2014
comment
на самом деле это возможно, если вы злоупотребляете дневной частью столбца даты для хранения другого месяца. Дисклеймер, я бы никогда не использовал этот метод, искать его, читать, комментировать было бы ужасно. Если вы используете этот метод, не указывайте мое имя.
- person t-clausen.dk   schedule 26.08.2014
Ответы (1)
Вы не можете сделать это с одним столбцом date
в SQL Server. Я бы посоветовал вам сохранить это как два столбца date
, например: BeginDate
и EndDate
. Это был бы лучший способ какое-то время использовать собственные типы SQL.
Если вам нужно сохранить это как varchar()
, расположите поле в разумном порядке. Используйте формат, например: «ГГГГММ-ГГГГММ». Это позволяет легко анализировать каждый компонент и сортировать его по первому значению. Однако позвольте мне повторить мой первый совет: лучший способ сохранить диапазон времени — это использовать два столбца, один для даты начала, а другой — для даты окончания.
person
Gordon Linoff
schedule
26.08.2014