[PostgreSQL]PostgreSQL数据类型格式化函数——字符串和数值间的转换

详情见官网:http://www.postgres.cn/docs/10/functions-formatting.html

PostgreSQL中有以下格式化函数:

函数返回类型描述例子
to_char(timestamptext)text把时间戳转成字符串to_char(current_timestamp, 'HH12:MI:SS')
to_char(intervaltext)text把间隔转成字符串to_char(interval '15h 2m 12s', 'HH24:MI:SS')
to_char(inttext)text把整数转成字符串to_char(125, '999')
to_char(double precisiontext)text把实数或双精度转成字符串to_char(125.8::real, '999D9')
to_char(numerictext)text把数字转成字符串to_char(-125.8, '999D99S')
to_date(texttext)date把字符串转成日期to_date('05 Dec 2000', 'DD Mon YYYY')
to_number(texttext)numeric把字符串转成数字to_number('12,454.8-', '99G999D9S')
to_timestamp(texttext)timestamp with time zone把字符串转成时间戳to_timestamp('05 Dec 2000', 'DD Mon YYYY')

1.将数值转成字符串类型to_char(inttext): 参数1为要转换值,参数2为数值格式化模式,其中用于数字格式化的模板模式为:

 

模式描述
9数字位置(如果不重要,可以丢弃)
0数字位置(就算不重要,也不能丢弃)
. (period)小数点
, (comma)分组(千)分隔符
PR尖括号内的负值
S带符号的数字(使用区域)
L货币符号(使用区域)
D小数点(使用区域)
G分组分隔符(使用区域)
MI在指定位置的负号(如果数字 < 0)
PL在指定位置的正号(如果数字 > 0)
SG在指定位置的正/负号
RN罗马数字(输入在 1 和 3999 之间)
TH or th序数后缀
V移动指定位数(参阅注解)
EEEE科学记数的指数
 
 
1.1当模式串大于等于于数字个数时,字符串正常显示:
 
 
1.2当模式串小于数字个数时,字符串会显示为#,位数跟格式化模式中9的位数有关:
 
 
1.3对于to_char方法模式串‘9’和‘0’的区别,为0时会补足0:
 

2.将字符串转成数值to_number(text,text):参数1是要转的数字字符串,参数2为模式参数

2.1当模式串大于等于于数字个数时,字符串正常显示;
 
2.2当模式串小于数字个数时,字符串仍然正常显示:
 
 
 
2.3对于to_number方法模式串为‘9’和‘0’时效果一致:
 
 

 

转载于:https://www.cnblogs.com/vickylinj/p/9670969.html

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值