出处:http://www.2cto.com/database/201208/145611.html
 
今天碰到只要取月份和天数,如果月份前面有0要去掉0.比如说2010-01-08 ,需要的结果是1-8. 引出了一系列的sql语句 
第一: 利用to_number的函数转换自动截0 select to_number(to_char(sysdate,'mm'))||'-'||to_number(to_char(sysdate,'dd')) from dual; 
第二: 利用ltrim函数加固定参数去掉0 select ltrim(to_char(sysdate,'mm'),'0')||'-'||ltrim(to_char(sysdate,'dd'),'0') from dual; 
上面两种方法实现了我们所需要的,共同的特点是都用到两个函数了,但有没有更简单的方法呢 ? 我猜有的人肯定就想到了oracle是不是有这样的格式呢 select to_char(sysdate,'m-d') from dual; 很可惜,提示错误,日期格式不存在 。不要灰心,我们继续... 
 
第三:利用函数的特性。 
我们知道 select sysdate from dual ; 得到的值是:2010-1-8 11:06:18 那有没有函数直接获取到月份1和日8,  www.2cto.com  
我们的猜测是正确的,确实有这样的函数,出现了下面的函数, 
select extract(month from sysdate) ||'-'|| extract(day from sysdate) month from dual; 
注意: extract 具体的用法找'google'吧 ,不会让你失望的。 又近了一步,满足了吧,不要满足了,下面还有。 
上面的方法有一个共同的特征,就是月和日都是分开取的,怎么样才能 合并到一起去,这样多好啊 ! 
看我们的第四种方法: 
第四:巧用oracle自带的格式 select to_char(sysdate,'fmmm-dd') from dual; 
ps:the format_mask parameter begins with "FM". This means that zeros and blanks are suppressed

Oracle取月份-不带前面的0的更多相关文章

  1. Datagridview中数字格式列 不显示小数点前面的0

    用代码设置DataGridView中某列为数字格式,但当小数为0.*的时候,前面的0却不显示.只显示.*. 看网上有说: 调整本地设置,控制面板-区域和语言选项,在弹出框的区域选项卡中,选择自定义,在 ...

  2. jquery获取value值时将数字型字符串前面的0自动截取处理方法

    <li class="cwhite" value="02" id="02" onclick="getQuestionList ...

  3. oracle 绝对值小于1的数值显示小数点前面的0

    SELECT DECODE(TRUNC(-.98),0,REPLACE(TO_CHAR(-.98), '.', '0.'),TO_CHAR(-.98))FROM DUAL;

  4. oracle数字返回为字符串时小时点前面的0缺失的问题

    SELECT 0.001||'' from dual UNION SELECT TO_CHAR(0.001||'','fm999990.99999') from dual;

  5. PL/SQL导出到execl中,数据前面的0发生丢失的解决办法

    ERR出现的场景再现: 使用 PL/SQL导出按钮,选择‘CSV文件’,保存为1.csv,后用execl打开,复制到VuGen中作为login脚本的参数化文件username. ERR及发现过程: 在 ...

  6. js 去掉字符串前面的0

    <script>var a='00123';alert(a.replace(/\b(0+)/gi,""));</script>

  7. Excel导出问题(导出时不去掉前面的0)(转)

    最简单的方法是:在数字前面加'符号.即代码里添加: "'" 以下均是网上搜集到的其他解答: 一.代码如下: style="mso-number-format:'/@';& ...

  8. JAVA去掉字符串前面的0

    最佳方案:使用正则 String str = "000000001234034120"; String newStr = str.replaceAll("^(0+)&qu ...

  9. robotframework之去除空格、去掉前面的0、增加空格换行符的方法,两个字符之间的拼接

    1.去除空格 A)若需要去除两个拼接字符之间的空格,可以使用robotframework中的关键词Catenate,需要注意的是SEPARATOR=一定需要大写 B)若在一个字符串中存在空格,且需要去 ...

随机推荐

  1. linux下使用screen和ping命令对网络质量进行监控

    linux下使用screen和ping命令对网络质量进行监控 场景:应用连接云服务器经常偶尔会出现连接不上的情况,android和IOS端连接的时候也会出现tcp延时5秒以上,现在想验证是否是云服务商 ...

  2. zabbix系列(十)zabbix添加对zookeeper集群的监控

    1.应用场景描述 在目前公司的业务中,有部分ESB架构用ZooKeeper作为协同服务的场景,做好ZooKeeper的监控很重要. 2.ZooKeeper监控要点 系统监控 内存使用量    ZooK ...

  3. Linux内核移植

    实验步骤:(1)准备工作(2)修改顶层Makefile(3)修改falsh 分区(4)配置编译内核 下面以Linux2.6.30.4内核移植到gec2440为例: 一.准备工作:建立工作目录,下载内核 ...

  4. [学习笔记]JS计数器,闭包和localStorage

    1.前言 Javascript也算用了挺久了,为了得到一个变量,类似Java的静态变量的功能,我想到了很早以前学习JS的闭包,还有做俄罗斯方块的排行榜用到LocalStorage技术,所以想总结一下, ...

  5. Yann Martell《少年 pi 的奇幻漂流》

    事情并没有像我们预想的那样发生,你能怎么办呢?无论生活以怎样的方式向你走来,你都应该勇敢地面对它,尽可能地享受它!

  6. webpack 模块标识符(Module Identifiers)

    让我们向项目中再添加一个模块 print.js: project webpack-demo |- package.json |- webpack.config.js |- /dist |- /src ...

  7. NDK 开发实例一(Android.mk环境配置下)

         在我写这篇文章的时候,Android Studio已经是2.3版本了,已经集成CMake 编译工具, 用户只需在 新建项目的时候,添加选项(Include C++ support),Andr ...

  8. 文档工具GitBook使用

    一.登陆注册 地址:https://www.gitbook.com/ 1.gitbook可使用github账号登录,如果已经注册github可以直接使用github账号登录 2.如果是github账号 ...

  9. 077 Apache的HBase与cdh的hue集成(不建议不同版本之间的集成)

    1.修改hue的配置文件hue.ini [hbase] # Use full hostname with security. hbase_clusters=(Cluster|linux-hadoop3 ...

  10. 编译linux内核以及添加系统调用的全过程

    参考链接: https://www.zybuluo.com/hakureisino/note/514321# 北京邮电大学操作系统实验: https://wenku.baidu.com/view/6d ...