Функция to_char (число) в postgres
Я хочу отобразить/преобразовать число в символ (той же длины), используя функцию to_char().
В оракуле я могу писать как
SELECT to_char(1234) FROM DUAL
Но в postgres SELECT to_char(1234)
не работает.
Ответы
Ответ 1
Вам нужно указать маску формата. В PostgreSQL нет значения по умолчанию:
select to_char(1234, 'FM9999');
Если вы не знаете, сколько цифр есть, просто оцените максимум:
select to_char(1234, 'FM999999999999999999');
Если число меньше, это не будет иметь никаких побочных эффектов.
Если вам не нужно форматировать (например, десятичную точку, разделитель тысяч), вы также можете просто передать значение в текст:
select 1234::text
Ответ 2
Вы должны указать числовой формат, то есть:
to_char(1234, '9999')
Посмотрите здесь для получения дополнительной информации: http://www.postgresql.org/docs/current/static/functions-formatting.html
Ответ 3
Функция CAST работает для меня.
SELECT CAST(integerv AS text) AS textV
FROM (
SELECT 1234 AS integerv
) x
Ответ 4
Вы можете использовать:
1234||''
Он работает с большинством баз данных.