Функция 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;
Результатом будут красиво отформатированные строки с датами и зарплатами сотрудников.