to_char 详解
对TO_CHAR的讨论可以分为从两种类型的数据到字符的转换:DATE和NUMBER。
TO_CHAR函数返回VARCHAR2数据类型的值。
1. NUMBER TO CHAR
语法: TO_CHAR(num,[format])
例:
SQL> select to_char(001)||'is a special number' from dual;
TO_CHAR(001)||'ISASP
--------------------
1is a special number
SQL> select to_char(0001,'09999999') from dual;
TO_CHAR(0
---------
00000001
数字格式掩码
|
格式元素 |
元素说明 |
格式 |
数字 |
字符结果 |
|---|---|---|---|---|
|
9 |
数字宽度 |
9999 |
12 |
12 |
|
0 |
显示前面的0 |
0999 |
12 |
0012 |
|
. |
小数点的位置 |
099.99 |
02.4 |
002.40 |
|
D |
小数分割点的位置 |
099D99 |
09.9 |
009.90 |
|
, |
逗号的位置 |
099,999 |
09080 |
009,080 |
|
G |
组分隔符的位置 |
099G999 |
09080 |
009,080 |
|
$ |
美元符号 |
$099 |
9 |
$009 |
|
L |
当地货币 |
L099 |
9 |
GBP009 (如果nls_currency设置为GBP) |
|
MI |
表示复数的减号的位置 |
9999MI |
-9876 |
9876- |
|
PR |
包围在括号内的负数 |
999PR |
-98 |
<98> |
|
EEEE |
科学计数法 |
99.99EEEE |
121.976 |
|
|
U |
nls_dual_currency |
U00999 |
3040 |
CAD03040 (如果nls_dual_currency设置为CAD) |
|
V |
乘以10n次(n是V之后9的数量) |
99999V99 |
3040 |
304000 |
|
S |
前面加上+或者- |
S999999 |
3040 |
+3040 |
SQL> select to_char(87,'999PR') from dual;
TO_CH
-----
87
SQL> select to_char(-87,'999PR') from dual;
TO_CH
-----
<87>
SQL> SELECT TO_CHAR(121.976,'99.99EEEE') FROM DUAL;
TO_CHAR(12
----------
1.22E+02
SQL> ALTER SESSION SET NLS_DUAL_CURRENCY = 'CAD';
Session altered.
SQL> SELECT TO_CHAR(3040,'U00999') FROM DUAL;
TO_CHAR(3040,'U0
----------------
CAD03040
SQL> SELECT TO_CHAR(3040,'99999V99') FROM DUAL;
TO_CHAR(
--------
304000
SQL> SELECT TO_CHAR(-3040,'99999S') FROM DUAL;
TO_CHA
------
3040-
to_char 详解的更多相关文章
- Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt
PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 ...
- oracle 数据类型详解---日期型(转载)
oracle 数据类型详解---日期型 oracle数据类型看起来非常简单,但用起来会发现有许多知识点,本文是我对ORACLE日期数据类型的一些整理,都是开发入门资料,与大家分享: 注:由于INTER ...
- ORACLE PL/SQL编程详解
ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...
- oracle checkpoint 详解
Oracle checkpoint详解 topcheckpoint扫盲 top什么是checkpoint 在数据库系统中,写日志和写数据文件是数据库中IO消耗最大的两种操作,在这两种操作中写数据文件属 ...
- oracle中的dual表详解
oracle中的dual表详解 1.DUAL表的用途 Dual 是 Oracle中的一个实际存在的表,任何用户均可读取,常用在没有目标表的Select语句块中 --查看当前连接用户 SQL> s ...
- [推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆)
原文:[推荐]ORACLE PL/SQL编程详解之三:PL/SQL流程控制语句(不给规则,不成方圆) [推荐]ORACLE PL/SQL编程详解之三: PL/SQL流程控制语句(不给规则,不成方圆) ...
- [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)
原文:[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日 ...
- 懵懂oracle之存储过程3--JOB详解
在前面学习了存储过程的开发.调试之后,我们现在就需要来使用存储过程了.简单的使用,像上篇<懵懂oracle之存储过程2>中提到的存储过程调用,我们可以将写好的存储过程在另一个PL/SQL块 ...
- 详解EBS接口开发之库存事务处理采购接收--补充
除了可以用 详解EBS接口开发之库存事务处理采购接收的方法还可以用一下方法,不同之处在于带有批次和序列控制的时候实现方式不同 The script will load records into ...
随机推荐
- PhpStorm (强大的PHP开发环境)2016.2.1 附注册方法
最新版PhpStorm 2016正式版改进了PHP 7支持,改进代码完成功能. PhpStorm 是最好的PHP开发工具,使用它进行PHP开发将会让你感觉到编程的乐趣. 快乐无极终于从oschina看 ...
- 士兵站队问题sol
作者:http://www.cnblogs.com/taoziwel/articles/1859577.html 相类似题目:输油管道问题 [问题描述] 在一个划分成网格的操场上,n个士兵散乱地站在网 ...
- linux系统的初化始配置 IP 主机名 防火墙 selinux
本次内容包括Linux:ip.主机名.关闭firewalld与selinux 开机临时生效和永久生效 ------------------------------------------------- ...
- bzoj2515 Room
Description Input Output 折半搜索,用散列表记录从原点出发,用了S(状压表示)这几种边(令|S|*2-1<=n),到达(x,y)的最大面积. #include<cs ...
- Google Tensorflow 源码编译(一):Protobuf<v3.0.0-alpha-3>
这几天终于把tensorflow安装上了,中间遇到过不少的问题,这里记录下来.供大家想源码安装的参考. 安装环境:POWER8处理器,Docker容器Ubuntu14.04镜像. Build Prot ...
- 微分方程——基本概念和常微分方程的发展史
1.2 基本概念和常微分方程的发展史 自变量.未知函数均为实值的微分方程称为实值微分方程:未知函数取复值或变量及未知函数均取复值时称为复值微分方程.若无特别声明,以下均指实变量的实值微分方程. 1.2 ...
- log4net:保存自定义参数到数据库
log4net:保存日志到数据库 自定义参数 新建一个类,继承于PatternLayoutConverter public class CustomerPatternConverter : Patte ...
- 【uTenux实验】信号量
信号量(semaphore)是一个用来指示可用的资源并将可用资源的数量以数值的形式表示出来的对象.当使用一组资源时,信号量用来实现互斥控制和同步.uTenux提供了信号量出来的API,可以很方便地使用 ...
- SQL 之witn as语法
with as 是临时视图的语法:with qry_a as (select * from table_a )select * from qry_a ;
- 使用asmcmdcp命令把datafile从文件系统移动(move)到asm磁盘组中 针对11gR2
使用asmcmd cp命令 把datafile从文件系统移动(move)到asm磁盘组中--针对11gR2 参考原文:How to Move a Datafile from Filesystem to ...