微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

[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’时效果一致:
 

分享图片

分享图片

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐