我想使用to_char()函数将数字显示/转换为字符(它的长度相同)。
在oracle中我可以像
一样写SELECT to_char(1234) FROM DUAL
但是在postgres中
SELECT to_char(1234)
没有用。
答案 0 :(得分:38)
您需要提供格式掩码。在PostgreSQL中没有默认值:
select to_char(1234, 'FM9999');
如果您不知道有多少位数,只需估算最大值:
select to_char(1234, 'FM999999999999999999');
如果数字的位数较少,则不会产生任何副作用。
如果您不需要任何格式(如小数点,千位分隔符),您也可以简单地将值转换为文本:
select 1234::text
答案 1 :(得分:6)
你必须指定一种数字格式,即:
to_char(1234, '9999')
请点击此处了解详情:http://www.postgresql.org/docs/current/static/functions-formatting.html
答案 2 :(得分:0)
CAST功能对我有用。
SELECT CAST(integerv AS text) AS textv
FROM (
SELECT 1234 AS integerv
) x
OR
SELECT integerv::text AS textv
FROM (
SELECT 1234 AS integerv
) x
答案 3 :(得分:-2)
您可以使用:
1234||''
适用于大多数数据库。