Я застрял в проблеме форматирования даты и надеюсь, что кто-то может мне помочь!Postgres SQL - выберите непоследовательные форматы даты из поля символов
Наша БД имеет поле даты, которое было отформатировано в качестве символьного поля нашей командой разработчиков из-за разных источников/форматов импорта.
Я идеально нацелен на создание представления, которое заканчивается датой, которую я буду использовать в инструменте отчетности (dbxtra) для ежедневной/ежемесячной группировки по сводам и отчетам.
Пример данных:
"2015-05-30"
"3/06/2015 12:00 AM"
Я попытался:
преобразования в date with: date
substr принять первые 10 символов
Любые предложения?
Я также пробовал: обрезать (оба '' из substr (comp_date, 1,10)) как comp_date2, который теперь дает мне часть даты только без пробелов .... хотя все равно ничего хорошего – Damo
Используйте 'to_timestamp'. Поскольку форматы варьируются в пределах столбца, вам, вероятно, понадобится оператор 'CASE', который ищет разные форматы. Это будет медленным и уродливым. Я предлагаю решительно ударить вашу команду программистов над головой. –
И как только вы очистили беспорядок, измените столбец на «timestamp» –