Функция TO_DATE
в PostgreSQL предназначена для преобразования строки в тип данных DATE согласно заданному формату. Она часто используется для импорта и обработки данных из внешних источников.
Синтаксис функции TO_DATE
Стандартный синтаксис функции выглядит следующим образом:
TO_DATE(строка, формат);
строка
— текстовое значение, которое нужно преобразовать в дату.формат
— шаблон, описывающий структуру исходной строки.
Примеры использования TO_DATE
Простой пример преобразования
Пример преобразования строки в дату:
SELECT TO_DATE('06-03-2025', 'DD-MM-YYYY') AS converted_date;
Результатом выполнения будет значение даты типа DATE
.
Использование различных форматов даты
Использование различных шаблонов формата:
SELECT TO_DATE('2025/03/06', 'YYYY/MM/DD') AS date_format1,
TO_DATE('March 6, 2025', 'Month DD, YYYY') AS date_format2;
Оба запроса корректно преобразуют строки в тип даты.
Популярные элементы формата для TO_DATE
YYYY
— год (2025)MM
— месяц (03)DD
— день (06)HH24
— часы в 24-часовом формате (14)MI
— минуты (30)Month
— полное название месяца (March)
TO_DATE в операциях сравнения
Использование функции TO_DATE
при сравнении дат:
SELECT * FROM events
WHERE event_date > TO_DATE('2025-03-01', 'YYYY-MM-DD');
Этот запрос вернет записи событий после указанной даты.
Возможные ошибки при использовании TO_DATE
Если строка не соответствует формату, PostgreSQL вернёт ошибку. Например:
SELECT TO_DATE('2025-13-01', 'YYYY-MM-DD');
Этот запрос вызовет ошибку, так как месяц не может быть равен 13.