ORACLE常用函数(1)

    xiaoxiao2021-03-25  102

    1. TRUNC(x[,y])

    功能: 计算截尾到y位小数的x值. y缺省为0,结果变为一个整数值.如果y是一个负数,那么就截尾到小数点左边对应的位上.trunc(sysdate)=to_date('20121231','yyyymmdd') 。

    trunc函数可用于截取日期时间

    用法:trunc(字段名,精度)

    具体实例:

    在表table1中,有一个字段名为sysdate,该行id=123,日期显示:2016/10/28 15:11:58

    1)截取时间到年时,sql语句如下:

    select trunc(sysdate,'yyyy') from table1 where id=123;  --yyyy也可用year替换

    显示:2016/1/1

    2)截取时间到月时,sql语句:

    select trunc(sysdate,'mm') from table1 where id=123;

    显示:2016/10/1

    3)截取时间到日时,sql语句:

    select trunc(sysdate,'dd') from table1 where id=123;

    显示:2016/10/28

    4)截取时间到小时时,sql语句:

    select trunc(sysdate,'hh') from table1 where id=123;

    显示:2016/10/28 15:00:00

    5)截取时间到分钟时,sql语句:

    select trunc(sysdate,'mi') from table1 where id=123;

    显示:2016/10/28 15:11:00

    6)截取时间到秒暂时不知道怎么操作

    7)不可直接用trunc(sysdate,'yyyy-mm-dd'),会提示“精度说明符过多”

    2.decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)

    该函数的含义如下: IF 条件=值1 THEN     RETURN(翻译值1) ELSIF 条件=值2 THEN     RETURN(翻译值2)     ...... ELSIF 条件=值n THEN     RETURN(翻译值n) ELSE     RETURN(缺省值) END IF decode(字段或字段的运算,值1,值2,值3)

           这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3 当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多

    参考:

    http://www.cnblogs.com/juddhu/archive/2012/03/07/2383101.html

    http://www.cnblogs.com/yangyang17/p/602

    转载请注明原文地址: https://ju.6miu.com/read-9597.html

    最新回复(0)