Функция TO_CHAR в PostgreSQL предназначена для преобразования значений дат и чисел в строки согласно заданному формату. Она широко используется для улучшения отображения данных в отчётах и приложениях.
Синтаксис функции TO_CHAR
Общий синтаксис функции выглядит следующим образом:
TO_CHAR(значение, формат);значение— дата или число, которое будет преобразовано в строку.формат— шаблон, определяющий вывод данных.
Форматирование дат с помощью TO_CHAR
Пример форматирования даты
Пример запроса, форматирующего дату в удобный для чтения вид:
SELECT TO_CHAR(NOW(), 'DD-MM-YYYY') AS formatted_date;Результатом выполнения будет строка вида 06-03-2025.
Популярные элементы формата даты
YYYY— полный год (2025)MM— месяц (03)DD— день месяца (06)HH24— часы в 24-часовом форматеMI— минутыSS— секунды
Форматирование чисел с помощью TO_CHAR
Пример форматирования числа
Форматирование числа для вывода с разделителями тысяч и заданной точностью:
SELECT TO_CHAR(1234567.89, 'FM9,999,999.00') AS formatted_number;Результатом выполнения будет 1,234,567.89.
Популярные элементы формата числа
9— цифра, подавляет ведущие нули0— цифра, дополняет число нулями до заданной длины.— десятичная точка,— разделитель тысячFM— удаляет лишние пробелы в начале строки
Использование TO_CHAR в запросах
Пример использования функции в запросах к таблицам:
SELECT employee_name,
TO_CHAR(hire_date, 'Month DD, YYYY') AS formatted_hire_date,
TO_CHAR(salary, 'FM$9,999.00') AS formatted_salary
FROM employees;Результатом будут красиво отформатированные строки с датами и зарплатами сотрудников.