Oracle Function:TO_CHAR
Description
The Oracle/PLSQL TO_CHAR function converts a number or date to a string.将数字转换为日期或字符串
Syntax
TO_CHAR( value [, format_mask] [, nls_language] )
Parameters or Arguments
|
Value |
A number or date that will be converted to a string. |
|
format_mask |
Optional. This is the format that will be used to convert value to a string. |
|
nls_language |
Optional. This is the nls language used to convert value to a string. |
Please refer to "Format Models" for information on datetime formats.
|
TO_CHAR (character) |
You can use this function in conjunction with any of the XML functions to generate a date in the database format rather than the XML Schema standard format.
|
|||||||
|
TO_CHAR (datetime) |
例子: SQL> CREATE TABLE date_tab( 2 ts_col TIMESTAMP, 3 tsltz_col TIMESTAMP WITH LOCAL TIME ZONE, 4 tstz_col TIMESTAMP WITH TIME ZONE 5 ); Table created. SQL> ALTER SESSION SET TIME_ZONE='-8:00'; Session altered. SQL> INSERT INTO date_tab VALUES( 2 timestamp '1999-12-01 10:00:00', 3 TIMESTAMP '1999-12-01 10:00:00', 4 TIMESTAMP '1999-12-01 10:00:00' 5 ); 1 row created. SQL> INSERT INTO date_tab VALUES( 2 TIMESTAMP '1999-12-02 20:00:00-8:00', 3 TIMESTAMP '1999-12-02 20:00:00-8:00', 4 TIMESTAMP '1999-12-02 20:00:00-8:00' 5 ); 1 row created. SQL> SELECT * FROM date_tab; TS_COL TSLTZ_COL TSTZ_COL ----------------------------------- ------------------------------ ---------------------------------------- 01-DEC-99 10.00.00.000000 AM 01-DEC-99 10.00.00.000000 AM 01-DEC-99 10.00.00.000000 AM -08:00 02-DEC-99 08.00.00.000000 PM 02-DEC-99 08.00.00.000000 PM 02-DEC-99 08.00.00.000000 PM -08:00 The example shows the results of applying TO_CHAR to different TIMESTAMP datatypes. The result for a TIMESTAMP WITH LOCAL TIME ZONE column is sensitive to session time zone, The results for the TIMESTAMP and TIMESTAMP WITH TIME ZONE columns are not sensitive to session time zone:
|
|||||||
|
TO_CHAR (number) |
|
Example
|
Numbers |
TO_CHAR(1210.73, '9999.9') TO_CHAR(-1210.73, '9999.9') TO_CHAR(1210.73, '9,999.99') TO_CHAR(1210.73, '$9,999.00') TO_CHAR(21, '000099') |
|
Dates |
TO_CHAR(sysdate, 'yyyy/mm/dd') TO_CHAR(sysdate, 'Month DD, YYYY') TO_CHAR(sysdate, 'FMMonth DD, YYYY') TO_CHAR(sysdate, 'MON DDth, YYYY') TO_CHAR(sysdate, 'FMMON DDth, YYYY') TO_CHAR(sysdate, 'FMMon ddth, YYYY') "FM":This means that zeros and blanks are suppressed(压制). |
The following is a list of valid parameters when the TO_CHAR function is used to convert a date to a string.
|
Parameter |
Explanation |
|
YEAR |
Year, spelled out |
|
YYYY |
4-digit year |
|
YYY YY Y |
Last 3, 2, or 1 digit(s) of year. |
|
IYY IY I |
Last 3, 2, or 1 digit(s) of ISO year. |
|
IYYY |
4-digit year based on the ISO standard |
|
Q |
Quarter of year (1, 2, 3, 4; JAN-MAR = 1). |
|
MM |
Month (01-12; JAN = 01). |
|
MON |
Abbreviated name of month. |
|
MONTH |
Name of month, padded with blanks to length of 9 characters. |
|
RM |
Roman numeral month (I-XII; JAN = I). |
|
WW |
Week of year (1-53) where week 1 starts on the first day of the year and continues to the seventh day of the year. |
|
W |
Week of month (1-5) where week 1 starts on the first day of the month and ends on the seventh. |
|
IW |
Week of year (1-52 or 1-53) based on the ISO standard. |
|
D |
Day of week (1-7). |
|
DAY |
Name of day. |
|
DD |
Day of month (1-31). |
|
DDD |
Day of year (1-366). |
|
DY |
Abbreviated name of day. |
|
J |
Julian day; the number of days since January 1, 4712 BC. |
|
HH |
Hour of day (1-12). |
|
HH12 |
Hour of day (1-12). |
|
HH24 |
Hour of day (0-23). |
|
MI |
Minute (0-59). |
|
SS |
Second (0-59). |
|
SSSSS |
Seconds past midnight (0-86399). |
|
FF |
Fractional seconds. |
Frequently Asked Questions
|
Question: Why doesn't this sort the days of the week in order? |
Answer: In the above SQL, the fmDay format mask used in the TO_CHAR function will return the name of the Day and not the numeric value of the day. To sort the days of the week in order, you need to return the numeric value of the day by using the fmD format mask as follows: |
|
SELECT ename, hiredate, TO_CHAR((hiredate),'fmDay') "Day" |
SELECT ename, hiredate, TO_CHAR((hiredate),'fmD') "Day" |
Oracle Function:TO_CHAR的更多相关文章
- Oracle Function: NVL
Description The Oracle/PLSQL NVL function lets you substitute a value when a null value is encounter ...
- Oracle Function:COUNT
Description The Oracle/PLSQL COUNT function returns the count of an expression. The COUNT(*) functio ...
- .Net程序员学用Oracle系列:视图、函数、存储过程、包
1.视图 在实际操作过程中,本人发现 Oracle 视图定义有一个缺陷,就是不大方便注释,每次写好的注释执行之后再打开视图定义所有注释就全都没了.后来我发现把注释写到末尾就不会被清除,但这样总感觉乖乖 ...
- Oracle ORA-12541:TNS:无监听程序
Oracle ORA-12541:TNS:无监听程序 标签: Oracle DataBase 今天使用Oracle数据库,使用可视化连接工具连接测试环境的数据库时提示无监听程序,最后在老师帮助下终于搞 ...
- oracle function学习1
oracle function学习基层: 函数就是一个有返回值的过程. 首先 知道oracle 使用限制: 函数调用限制: 1. SQL语句中只能调用存储函数(服务器端),而不能调用客户端 ...
- 【转载】Oracle递归查询:使用prior实现树操作【本文出自叶德华博客】
本文标题:Oracle递归查询:使用prior实现树操作 本文链接:http://yedward.net/?id=41 本文版权归作者所有,欢迎转载,转载请以文字链接的形式注明文章出处. Oracle ...
- Oracle错误:ORA-01033
Oracle错误:ORA-01033 错误编码:ORA-01033: ORACLE initialization or shutdown in progress 故障描述:因为移动了数据库文件([NA ...
- Oracle系列:记录Record
Oracle系列:记录Record 分类: [Oracle] (15) 版权声明:本文为博主原创文章,未经博主允许不得转载. Oracle系列:记录(Record) 一,什么是记录(Record) ...
- Oracle维护:每天的工作
Oracle维护:每天的工作 检查数据库状态 确认所有的INSTANCE状态以及listener状态正常,登陆到所有数据库或例程,检测ORACLE后台进程: $ ps –ef|grep ora $ l ...
随机推荐
- Android沉浸式状态栏兼容4.4手机的实现
一.概述 最近注意到QQ新版使用了沉浸式状态栏,ok.先声明一下:本篇博客效果下图: 关于这个状态栏变色究竟叫「Immersive Mode」/「Translucent Bars」有兴趣能够去 为什么 ...
- 设置开机自启动VirtualBox虚拟机系统
如果常用VirtualBox虚拟机系统的话,设置个随开机启动也是很方便的.不需要打开VirtualBox窗口,直接就是系统启动了. 又继续上网搜索学习了.(设置开机自启动VirtualBox虚拟机系统 ...
- osgearth缓存数据命令
新建一个.bat文件 中国地区 osgearth_package.exe ReadyMap.earth --tms ReadyMap.earth --out D:\APICenter\EarthDat ...
- MQTT_DEMO
1 /* 2 Copyright (c) 2009-2012 Roger Light <roger@atchoo.org> 3 All rights reserved. 4 5 Redis ...
- 使用es6的蹦床函数解决递归造成的堆栈溢出
首先,我们先定义一个函数,使用递归的思想写求和的方法: function sum(x, y) { if (y > 0) { return sum(x + 1, y - 1); } else ...
- Java bean中布尔类型使用注意
JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类. JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolea ...
- JS案例 - 基于vue的移动端长按手势
================================惯例碎碎念前言================================ 当时首先想到要做长按事件的时候,我想到的是vue内部的自 ...
- how-to-build-c-static-libraries-boost
http://tungchingkai.blogspot.jp/2016/11/how-to-build-c-static-libraries-boost.html How to build C++ ...
- XCode 遇到的问题
俗话说:工欲善其事必先利其器.抛弃了VS,投入XCode的怀抱.先不说两者的差距,还是先熟悉开发工具是关键.下面列出个人使用中遇到的一些问题. Problem1:修改Xcode字体颜色以及调整字体大小 ...
- jenkins部署war包到远程服务器的tomcat
一.目的 jenkins上将war包,部署到远程服务器的tomcat上. 这边tomcat在windows 主机A上,版本apache-tomcat-8.5.23. jenkins在主机B上,cent ...


