TO_CHAR

postgresql中to_char和round的混合使用

我的梦境 提交于 2020-02-29 11:49:30
在postgresql中大家都用过round吧,当遇到小数的时候该如何显示呢?看例子 SELECT to_char(round(127 * 0.1 / 67543,6)*10000,'90.99') 1.88 SELECT to_char(round(127 * 0.1 / 67543,6)*10000,'90.00') 1.88 SELECT to_char(round(150 * 0.1 / 50000,6)*1000,'90.09') 0.30 SELECT to_char(round(150 * 0.1 / 50000,6)*1000,'00.09') 00.30 SELECT to_char(round(150 * 0.1 / 50000,6)*1000,'99.09') .30 看出规则了没?呵呵,以上sql的结果说明:0是任意占位符,如果0位上有数据那就显示数据,如果没有数据就显示0;9是实数占位符,9位上有数据(大于0 的数),显示数据,没有数据则什么也不显示。 所以当我们要取百分数或千分数的时候,要满足xx.xx的格式时,就要用90.99当占位符 来源: oschina 链接: https://my.oschina.net/u/79159/blog/357404

Oracle常用函数系列之六:转换函数

隐身守侯 提交于 2019-12-02 22:46:48
本文将演示以下3个 Oracle 中的常用日期函数。 函数 功能 TO_CHAR (d|n[,fmt]) 把日期和数字转换为制定格式的字符串 TO_DATE (x [,fmt]) 把一个字符串以fmt格式转换为一个日期类型 TO_NUMBER(x[,fmt]) 把一个字符串以fmt格式转换为一个数字 下面将结合实例对这些函数进行介绍。 转换函数将值从一种数据类型转换为另外一种数据类型。常用的转换函数有: l TO_CHAR(d|n[,fmt]) 把日期和数字转换为制定格式的字符串。fmt是格式化字符串,日期的格式化字符串前面已经学习过。 示例1:TO_CHAR对日期的处理 SQL> SELECT TO_CHAR(SYSDATE,'YYYY"年"MM"月"DD"日" HH24:MI:SS') "DATE" 2 FROM DUAL; DATE ----------------------- 2016年12月07日 15:43:59 针对数字的格式化,格式化字符有: 参数 示例 说明 9 999 指定位置处显示数字。 . 9.9 指定位置返回小数点 , 99,99 指定位置返回一个逗号 $ $999 数字开头返回一个美元符号 EEEE 9.99EEEE 科学计数法表示 L L999 数字前加一个本地货币符号 PR 999PR 如果数字式负数则用尖括号进行表示 示例2:TO