热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Oracleto_char格式化函数

Postgres格式化函数提供一套有效的工具用于把各种数据类型(日期/时间,int,float,numeric)转换成格式化的字符串以及反过来从格式化的字符串转换成原始的数据类型。注意:所有格式化函数的第二个参数是用于...SyntaxHighlighter.all();

Postgres 格式化函数提供一套有效的工具用于把各种数据类型(日期/时间,int,float,numeric)转换成格式化的字符串以及反过来从格式化的字符串转换成原始的数据类型。
注意:所有格式化函数的第二个参数是用于转换的模板。
表 5-7. 格式化函数
函数 返回 描述 例子
to_char(timestamp, text) text 把 timestamp 转换成 string to_char(timestamp 'now','HH12:MI:SS')  www.2cto.com  
to_char(int, text) text 把 int4/int8 转换成 string to_char(125, '999')
to_char(float, text) text 把 float4/float8 转换成 string to_char(125.8, '999D9')
to_char(numeric, text) text 把 numeric 转换成 string to_char(numeric '-125.8', '999D99S')
to_date(text, text) date 把 string 转换成 date to_date('05 Dec 2000', 'DD Mon YYYY')
to_timestamp(text, text) date 把 string 转换成 timestamp to_timestamp('05 Dec 2000', 'DD Mon YYYY')
to_number(text, text) numeric 把 string 转换成 numeric to_number('12,454.8-', '99G999D9S')
表 5-8. 用于 date/time 转换的模板
模板 描述
HH 一天的小时数 (01-12)
HH12 一天的小时数 (01-12)
HH24 一天的小时数 (00-23)
MI 分钟 (00-59)
SS 秒 (00-59)
SSSS 午夜后的秒 (0-86399)
AM or A.M. or PM or P.M. 正午标识(大写)
am or a.m. or pm or p.m. 正午标识(小写)
Y,YYY 带逗号的年(4 和更多位)  www.2cto.com  
YYYY 年(4和更多位)
YYY 年的后三位
YY 年的后两位
Y 年的最后一位
BC or B.C. or AD or A.D. 年标识(大写)
bc or b.c. or ad or a.d. 年标识(小写)
MONTH 全长大写月份名(9字符)
Month 全长混合大小写月份名(9字符)
month 全长小写月份名(9字符)
MON 大写缩写月份名(3字符)
Mon 缩写混合大小写月份名(3字符)
mon 小写缩写月份名(3字符)
MM 月份 (01-12)
DAY 全长大写日期名(9字符)
Day 全长混合大小写日期名(9字符)
day 全长小写日期名(9字符)
DY 缩写大写日期名(3字符)
Dy 缩写混合大小写日期名(3字符)
dy 缩写小写日期名(3字符)
DDD 一年里的日子(001-366)
DD 一个月里的日子(01-31)
D 一周里的日子(1-7;SUN=1)
W 一个月里的周数
WW 一年里的周数
CC 世纪(2 位)
J Julian 日期(自公元前4712年1月1日来的日期)
Q 季度
RM 罗马数字的月份(I-XII;I=JAN)-大写
rm 罗马数字的月份(I-XII;I=JAN)-小写
所有模板都都允许使用前缀和后缀修改器。模板里总是允许使用修改器。前缀 'FX' 只是一个全局修改器。

表 5-9. 用于日期/时间模板 to_char() 的后缀
后缀 描述 例子
FM 填充模式前缀 FMMonth
TH 大写顺序数后缀 DDTH
th 小写顺序数后缀 DDTH
FX 固定模式全局选项(见下面) FX Month DD Day
SP 拼写模式(还未实现) DDSP      www.2cto.com  
用法须知:
如果没有使用 FX 选项,to_timestamp 和 to_date 忽略空白。FX 必须做为模板里的第一个条目声明。
反斜杠("\")必须用做双反斜杠("\\"),例如 '\\HH\\MI\\SS'。
双引号('"')之间的字串被忽略并且不被分析。如果你想向输出写双引号,你必须在双引号前面放置一个双反斜杠('\\'),例如 '\\"YYYY Month\\"'。
to_char 支持不带前导双引号('"')的文本,但是在双引号之间的任何字串会被迅速处理并且还保证不会被当作模板关键字解释(例如:'"Hello Year: "YYYY')。
表 5-10. 用于 to_char(numeric) 的模板
模板 描述
9 带有指定位数的值
0 前导零的值
. (句点) 小数点
, (逗号) 分组(千)分隔符
PR 尖括号内负值
S 带负号的负值(使用本地化)
L 货币符号(使用本地化)
D 小数点(使用本地化)
G 分组分隔符(使用本地化)
MI 在指明的位置的负号(如果数字 <0)
PL 在指明的位置的正号(如果数字 > 0)
SG 在指明的位置的正/负号
RN 罗马数字(输入在 1 和 3999 之间)
TH or th 转换成序数
V 移动 n 位(小数)(参阅注解)
EEEE 科学记数。现在不支持。
用法须知:
使用 &#39;SG&#39;,&#39;PL&#39; 或 &#39;MI&#39; 的带符号字并不附着在数字上面;例如,to_char(-12, &#39;S9999&#39;) 生成 &#39; -12&#39;,而 to_char(-12, &#39;MI9999&#39;) 生成 &#39;- 12&#39;。Oracle 里的实现不允许在 9 前面使用 MI,而是要求 9 在 MI 前面。  www.2cto.com  
PL,SG,和 TH 是 Postgres 扩展。
9 表明一个与在 9 字串里面的一样的数字位数。如果没有可用的数字,那么使用一个空白(空格)。
TH 不转换小于零的值,也不转换小数。TH 是一个 Postgres 扩展。
V 方便地把输入值乘以 10^n,这里 n 是跟在 V 后面的数字。to_char 不支持把 V 与一个小数点绑在一起使用(例如. "99.9V99" 是不允许的)。
表 5-11. to_char 例子
输入 输出
to_char(now(),&#39;Day, HH12:MI:SS&#39;) &#39;Tuesday , 05:39:18&#39;
to_char(now(),&#39;FMDay, HH12:MI:SS&#39;) &#39;Tuesday, 05:39:18&#39;
to_char(-0.1,&#39;99.99&#39;) &#39; -.10&#39;
to_char(-0.1,&#39;FM9.99&#39;) &#39;-.1&#39;
to_char(0.1,&#39;0.9&#39;) &#39; 0.1&#39;
to_char(12,&#39;9990999.9&#39;) &#39; 0012.0&#39;
to_char(12,&#39;FM9990999.9&#39;) &#39;0012&#39;
to_char(485,&#39;999&#39;) &#39; 485&#39;
to_char(-485,&#39;999&#39;) &#39;-485&#39;
to_char(485,&#39;9 9 9&#39;) &#39; 4 8 5&#39;
to_char(1485,&#39;9,999&#39;) &#39; 1,485&#39;
to_char(1485,&#39;9G999&#39;) &#39; 1 485&#39;
to_char(148.5,&#39;999.999&#39;) &#39; 148.500&#39;
to_char(148.5,&#39;999D999&#39;) &#39; 148,500&#39;
to_char(3148.5,&#39;9G999D999&#39;) &#39; 3 148,500&#39;
to_char(-485,&#39;999S&#39;) &#39;485-&#39;  www.2cto.com  
to_char(-485,&#39;999MI&#39;) &#39;485-&#39;
to_char(485,&#39;999MI&#39;) &#39;485&#39;
to_char(485,&#39;PL999&#39;) &#39;+485&#39;
to_char(485,&#39;SG999&#39;) &#39;+485&#39;
to_char(-485,&#39;SG999&#39;) &#39;-485&#39;
to_char(-485,&#39;9SG99&#39;) &#39;4-85&#39;
to_char(-485,&#39;999PR&#39;) &#39;<485>&#39;
to_char(485,&#39;L999&#39;) &#39;DM 485
to_char(485,&#39;RN&#39;) &#39; CDLXXXV&#39;
to_char(485,&#39;FMRN&#39;) &#39;CDLXXXV&#39;
to_char(5.2,&#39;FMRN&#39;) V
to_char(482,&#39;999th&#39;) &#39; 482nd&#39;
to_char(485, &#39;"Good number:"999&#39;) &#39;Good number: 485&#39;
to_char(485.8,&#39;"Pre-decimal:"999" Post-decimal:" .999&#39;) &#39;Pre-decimal: 485 Post-decimal: .800&#39;
to_char(12,&#39;99V999&#39;) &#39; 12000&#39;
to_char(12.4,&#39;99V999&#39;) &#39; 12400&#39;
to_char(12.45, &#39;99V9&#39;) &#39; 125&#39;
 
 
 
摘自 悠悠的BLOG

推荐阅读
  • 华为畅享8与华为畅享7 Plus对比评测:哪款更适合你?
    如果您正在考虑购买华为畅享8或华为畅享7 Plus,本文将为您提供详细的配置对比和用户体验分析,帮助您做出明智的选择。 ... [详细]
  • This article explores the process of integrating Promises into Ext Ajax calls for a more functional programming approach, along with detailed steps on testing these asynchronous operations. ... [详细]
  • 解决Expo XDE 2.22.1版本启动错误
    根据问题描述,用户在将Expo升级至2.22.1版本后,在尝试打开项目时遇到了错误。本文提供了详细的错误分析及解决方案。 ... [详细]
  • 探索CNN的可视化技术
    神经网络的可视化在理论学习与实践应用中扮演着至关重要的角色。本文深入探讨了三种有效的CNN(卷积神经网络)可视化方法,旨在帮助读者更好地理解和优化模型。 ... [详细]
  • 我整理了HMOV四大5G旗舰的参数,可依然没能拯救我的选择困难症
    伊瓢茕茕发自凹非寺量子位报道|公众号QbitAI报道了那么多发布会,依然无法选出要换的第一部5G手机。这不,随着华为P40系列发布,目前国 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • UVa 11683: 激光雕刻技术解析
    自1958年发明以来,激光技术已在众多领域得到广泛应用,包括电子设备、医疗手术工具、武器等。本文将探讨如何使用激光技术进行材料雕刻,并通过编程解决一个具体的激光雕刻问题。 ... [详细]
  • Docker基础入门与环境配置指南
    本文介绍了Docker——一款用Go语言编写的开源应用程序容器引擎。通过Docker,用户能够将应用及其依赖打包进容器内,实现高效、轻量级的虚拟化。容器之间采用沙箱机制,确保彼此隔离且资源消耗低。 ... [详细]
  • 1,滤波流程2,图像的金字塔分解(拉普拉斯金字塔)3,金字塔傅里叶频率组合滤波(本文完ÿ ... [详细]
  • 在学习了Splay树的基本查找功能后,可能会觉得它与普通的二叉查找树没有太大的区别,仅仅是通过splay操作减少了时间开销。然而,Splay树之所以被誉为“序列之王”,主要在于其强大的区间操作能力。 ... [详细]
  • 本文探讨了如何选择一个合适的序列化版本ID(serialVersionUID),包括使用生成器还是简单的整数,以及在不同情况下应如何处理序列化版本ID。 ... [详细]
  • 本文由公众号【数智物语】(ID: decision_engine)发布,关注获取更多干货。文章探讨了从数据收集到清洗、建模及可视化的全过程,介绍了41款实用工具,旨在帮助数据科学家和分析师提升工作效率。 ... [详细]
  • 如何使用Maven将依赖插件一并打包进JAR文件
    本文详细介绍了在使用Maven构建项目时,如何将所需的依赖插件一同打包进最终的JAR文件中,以避免手动部署依赖库的麻烦。 ... [详细]
  • 本文详细介绍了如何将Google设置为国际版界面的方法,适合对调整Google界面设置感兴趣的用户。通过本文提供的步骤,您将能够轻松地将Google设置为您首选的语言版本,即使在中国大陆地区也能实现这一目标。 ... [详细]
  • Hadoop MapReduce 实战案例:手机流量使用统计分析
    本文通过一个具体的Hadoop MapReduce案例,详细介绍了如何利用MapReduce框架来统计和分析手机用户的流量使用情况,包括上行和下行流量的计算以及总流量的汇总。 ... [详细]
author-avatar
蒋雨儿_824
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有