zoukankan      html  css  js  c++  java
  • Oracle函数substr, instr, trunc

    --Oracle trunc()函数的用法

    /**************日期********************/

      SELECT TRUNC(SYSDATE) FROM dual --2013-01-06 今天的日期为2013-01-06
      SELECT TRUNC(SYSDATE, 'mm') FROM dual --2013-01-01 返回当月第一天.
      SELECT TRUNC(SYSDATE, 'yy') FROM dual --2013-01-01 返回当年第一天
      SELECT TRUNC(SYSDATE, 'dd') FROM dual --2013-01-06 返回当前年月日
      SELECT TRUNC(SYSDATE, 'yyyy') FROM dual --2013-01-01 返回当年第一天
      SELECT TRUNC(SYSDATE, 'd') FROM dual --2013-01-06 (星期天)返回当前星期的第一天
      SELECT TRUNC(SYSDATE, 'hh') FROM dual --2013-01-06 17:00:00 当前时间为17:35
      SELECT TRUNC(SYSDATE, 'mi') FROM dual --2013-01-06 17:35:00 TRUNC()函数没有秒的精确
    /***************数字********************/
    /*
    TRUNC(number,num_digits)
    Number 需要截尾取整的数字。
    Num_digits 用于指定取整精度的数字。Num_digits 的默认值为 0。
    TRUNC()函数截取时不进行四舍五入
    */
      SELECT TRUNC(123.458) FROM dual --123
      SELECT TRUNC(123.458,0) FROM dual --123
      SELECT TRUNC(123.458,1) FROM dual --123.4
      SELECT TRUNC(123.458,-1) FROM dual --120
      SELECT TRUNC(123.458,-4) FROM dual --0
      SELECT TRUNC(123.458,4) FROM dual --123.458
      SELECT TRUNC(123) FROM dual --123
      SELECT TRUNC(123,1) FROM dual --123
      SELECT TRUNC(123,-1) FROM dual --120

    --------------------------------华丽的分割线---------------------------------

    --Oracle substr()、instr()函数的用法

    --substr(字符串,截取开始位置,截取长度)=返回截取的字
    select substr('miaoying',0,1) from dual;--返回结果为:m
    select substr('miaoying',1,1) from dual;--返回结果为:m--说明0和1都表示截取的位置为第一个字符
    select substr('miaoying',-7,4) from dual;--返回结果为:iaoy--负数表示:-7表示从右边开始数第七位开始,也就是i,截取长度为4的字符串

    --instr(源字符串,目标字符串,起始字符串,匹配字符串)=返回要截取的字符串在源字符串中的位置,从字符的开始,只检索一次
    --instr(string1,string2,index1,index2) 表示:要在string1的index1号位置,开始查找,第index2次,出现的string2
    select instr('miaoying','i',2,2) from dual;--返回6:也就是说:在"miaoying"的第2号位置开始,查找第二次出现的i的位置
    select instr('miaoying','k',2,2)from dual;--返回0:即如果查找不到,则返回0
    select instr('miaoying','i') from dual;--返回2
    select instr('miaoying','yi') from dual;--返回5:即"yi"的y的位置
    select instr('miaoying','i',-1,2) from dual;--返回2:
    --空格也是字符。。。。。

    select * from omgnode a where name like '%miaoying%'
    select * from omgnode a where instr(name,'miaoying')>0--效果一样

  • 相关阅读:
    InfoPath 发布表单到SharePoint库报错
    在log4net中控制nhibernate输出
    微信扫一扫(wx.scanQRCode)功能新手可能遇到的问题
    3.Zookeeper的安装和配置(集群模式)
    1.配置HDFS HA (高可用)
    2.Zookeeper工作原理(详细)
    1.Zookeeper 定义与工作原理
    js 获取元素的几种方法
    弹出层居中
    XUACompatible
  • 原文地址:https://www.cnblogs.com/bishuihengchen/p/8041436.html
Copyright © 2011-2022 走看看