Две причины:
- Сортировка результатов по датам
- Нечувствительность к изменениям форматирования даты
Итак, давайте возьмем для примера набор записейэто выглядит так:
5/12/1999 | Frank N Stein
1/22/2005 | Drake U. La
10/4/1962 | Goul Friend
Если бы мы хранили данные по-своему, но отсортировали по датам в порядке сборки, SQL ответит набором результатов, который выглядит следующим образом:
1/22/2005 | Drake U. La
10/4/1962 | Goul Friend
5/12/1999 | Frank N. Stein
Где, если мы сохранили даты как DATETIME, SQL ответит правильно, упорядочив их следующим образом:
10/4/1962 | Goul Friend
5/12/1999 | Frank N. Stein
1/22/2005 | Drake U. La
Кроме того, если где-то в будущем вам нужно было отобразить даты в другом формате, например, например:ГГГГ-ММ-ДД, тогда вам нужно будет преобразовать все свои данные или иметь дело со смешанным контентом.Когда он хранится как SQL DATE, вы вынуждены выполнять преобразование в коде, и, скорее всего, у вас есть одна возможность изменить формат для отображения всех дат - бесплатно.