База данных, к которой я обращаюсь, имеет таблицу пользователя с столбцом, содержащим дату, которую пользователь зарегистрировал для веб-сайта.Как упорядочить по дате, когда столбец не отформатирован?
дата вводится в столбец VARCHAR без надлежащего форматирования даты, как это:
Apr 18 2013 12:27PM
Когда я SELECT MAX (dateColumn)
я получаю значение примерно на полпути через диапазон дат. Я рассмотрел использование подстрок, чтобы захватить год, затем месяц, затем дату и упорядочить их последовательно. Проблема заключается в том, что даты с днями, начиная с 0 будет укоротить на один символ, как это:
May 1 2013 12:27PM
Есть простой способ найти самую высокую дату, без изменения структуры базы данных?
Вы не должны хранить даты в столбце varchar. И ваша проблема является прямым результатом этой ошибки. Я настоятельно рекомендую изменить столбец на реальный «DateTime» и перенести данные. –
Да, к сожалению, это не я сделал сайт/db. Поскольку уже есть 200 пользователей, я не могу изменить базу данных. – blarg
Конечно, вы можете. Добавьте новый столбец, перенесите данные из старого столбца в новый столбец. Отбросьте старый столбец. Откорректируйте свое приложение. Это стандартная миграция схемы (которую вы должны иметь в любом случае), и количество пользователей не имеет к этому никакого отношения. –