病毒安全知识,电脑网络技术,手工杀毒方法,答疑解决笔记

导航

« 很可怕的事中华武术万古长 »

Oracle取短日期格式

  同事要求把从Oracle数据库中取出的日期直接变成短日期格式,即yyyy-m-d,一位数月和日时不用在前面补充0,找到对应的视图脚本,原来是用to_char函数来格式化取出的日期数据,to_char(sysdate,'yyyy-mm-dd'),而oracle的to_char函数是不能取得类似yyyy-m-d的格式,因为在oracle里没有m这种格式,只有mm代表月份数字,而d表示一周的1-7,dd表示一个月的1-31,ddd表示一年的1-366,所以如果改成to_char(sysdate,'yyyy-m-d')是会报错的。

  原本想直接取出月日值来截取再合并,后来才发现有更简单的方法,用FM参数,在格式里有FM开头,表示去掉开头的0与空白,如to_char(sysdate,'FMyyyy-mm-dd'),如果sysdate是2014年4月1日,前面函数导出的数据就不会是2014-04-01,而是2014-4-1,被FM截去了0。FM不仅只用在yyyy-mm-dd上,大小写都可以,反正Oracle都会在执行前转化成大写,如果想oracle提高效率就用大写。

  Oracle其实还是有一些与众不同地方的,除了上面说的没有短日期格式,比如to_char如果要格式化时间,得用mi表示分钟,而不是mm,因为mm是月份,所以格式为'yyyy-mm-dd hh:mi:ss',hh后面可用24或12表示小时制,不加就是12小时制,hh范围1-12,而24小时制是从0-23,加了FM参数的to_char,是不会把0点的0给去掉的,但FM不能用在to_date函数中。


>> 除非说明均为原创,如转载请注明来源于http://www.stormcn.cn/post/1521.html

  • 1楼.微笑
  • -0- 要求```第一 哈哈哈~~~ 没招
  • 2014-4-24 12:06:35  [引用]

发表评论(无须注册,所有评论在审核通过后显示):

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

  • 微信订阅号
    微信订阅

最新发表

最新评论及回复

本站出现的所有广告均不代表本人及本站观点立场 | 关于我 | 网站地图 | 联系邮箱 | 返回顶部
Copyright 2008-2020 www.stormcn.cn. All Rights Reserved. Powered By Z-Blog.

闽公网安备 35010202000133号