从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-31ddd表示一年的1-366,所以如果改成to_char(sysdate,'yyyy-m-d')是会报错嘚
原本想直接取出月日值来截取再合并,后来才发现有更简单的方法用FM参数,在格式里有FM开头表示去掉开头的0与空白,如to_char(sysdate,'FMyyyy-mm-dd')如果sysdate是2014年4月1日,前面函数导出的数据就不会是而是,被FM截去了0FM不仅只用在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函数中