oracle 12c to_char 函数(2) 数字-字符串

oracle 12c to_char 函数(2) 数字-字符串

TO_CHAR 函数,数据转换为文字形式,如下图
to_char类型装换

本节内容为TO_CHAR()第二节内容,是由数字类型变化为字符串类型

TO_CHAR() 日期型到字符型

作用
to_char 中的参数为数字类型,可以将数字转为特定格式的字符串类型
写法

TO_CHAR(数值,['数值形式'][,NLS参数])
    /* @param  数值  需要变化的数值
    *  @param '数值形式' 变化形式(可省略)
    *  @param NLS_CURRENCY,指定要用作L数字格式元素的本地货币符号的字符串(可省略)
    *  @return 字符串
    * /

主要的数值变化表

系统环境为日语环境

元素说明日语环境测试语句
9返回指定位数的值。利用9来反映123select to_char(123.456,’999’) from dual;
0它返回前导0(零),它返回尾随0(零)。00123select to_char(123.456,’00999’) from dual;
$将值前面的美元符号返回。$123select to_char(123.456,’$999’) from dual;
L返回指定位置的本地货币符号(NLS_CURRENCY参数的当前值)。\123select to_char(123.456,’L999’) from dual;
D指定位置用小数点表示123.456select to_char(123.456,’999D999’) from dual;
.指定位置用小数点表示123.46select to_char(123.456,’999.99’) from dual;
G返回指定位置的千位分隔符(NLS_NUMERIC_CHARACTER参数的当前值)。 您可以在单个数字格式模型中指定多于一千个分隔符。限制:在数字格式模型中,无法将千位分隔符指定为小数字符或句点的右侧。123,456select to_char(123456,’999G999’) from dual;
,将逗号返回到指定的位置。 可以为单个数字格式模型指定多个逗号.限制:数字格式模型不能以逗号元素开头。在数字格式模型中,不能在小数字符或句点的右侧指定逗号。1,235select to_char(1234.56,’9,999’) from dual;
MI它在负值最右侧一个负号( - )。它在正值之后返回空白。1235-select to_char(-1234.56,’9999MI’) from dual;
PR负值尖括号<>中返回。它在正值之前和之后放置一个空白并将其返回。<1235>select to_char(-1234.56,’9999PR’) from dual;
EEEE科学计数法表示。1E+03select to_char(1234.56,’9999EEEE’) from dual;
V将该值相乘10的n次方(根据需要舍入数字)。 其中n是V之后的9。1234560select to_char(1234.56,’9999V999’) from dual;
S将符号表示到前方或者后方-1234.56select to_char(-1234.56,’s9999D99’) from dual;
S-1234.56-select to_char(-1234.56,’s9999D99’) from dual;

特别注意的点

  • 9 代表整数的位数不能实际表示的少,不然会呈现‘ #’ 代表
    这里写图片描述
  • 小数点位数不够时,会出现四舍五入。
    这里写图片描述
  • 不指定表示的形式时,可以原样输出,但不允许数字中夹杂 别的东西。
    这里写图片描述
  • 指定开头为0时才会多加0,不然都省略0.
    这里写图片描述

nlsparam

‘nlsparam’参数指定数字格式元素返回的形式。

  • 小数字符

  • 分隔数字

  • 当地的货币符号

  • 国际货币符号

该参数以下面的格式指定。

'NLS_NUMERIC_CHARACTERS =''d/g''
NLS_CURRENCY =''文字''
NLS_ISO_CURRENCY =地区'

字母d和g分别代表十进制字符和千位分隔符。 这些必须是不同的单字节字符。 在引用的字符串中,您需要在参数值周围使用两个单引号。 允许10个货币符号。

如果省略’nlsparam’或其中一个参数,则此函数将使用会话的默认参数值。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值