標籤:

Oracle SQL 內置函數大全(2)

Oracle SQL 內置函數大全(2)

  • Oracle幫您準確洞察各個物流環節
  • 26.MOD(n1,n2) 返回一個n1除以n2的餘數SQL> select mod(10,3),mod(3,3),mod(2,3) from dual;

    MOD(10,3) MOD(3,3) MOD(2,3)--------- --------- ---------1 0 2

    27.POWER 返回n1的n2次方根SQL> select power(2,10),power(3,3) from dual;

    POWER(2,10) POWER(3,3)----------- ----------1024 27

    28.ROUND和TRUNC按照指定的精度進行舍入SQL> select round(55.5),round(-55.4),trunc(55.5),trunc(-55.5) from dual;

    ROUND(55.5) ROUND(-55.4) TRUNC(55.5) TRUNC(-55.5)----------- ------------ ----------- ------------56 -55 55 -55

    29.SIGN 取數字n的符號,大於0返回1,小於0返回-1,等於0返回0SQL> select sign(123),sign(-100),sign(0) from dual;

    SIGN(123) SIGN(-100) SIGN(0)--------- ---------- ---------1 -1 0

    30.SIN 返回一個數字的正弦值SQL> select sin(1.57079) from dual;

    SIN(1.57079)------------1

    31.SIGH 返回雙曲正弦的值SQL> select sin(20),sinh(20) from dual;

    SIN(20) SINH(20)--------- ---------.91294525 242582598

    32.SQRT 返回數字n的根SQL> select sqrt(64),sqrt(10) from dual;

    SQRT(64) SQRT(10)--------- ---------8 3.1622777

    33.TAN 返回數字的正切值SQL> select tan(20),tan(10) from dual;

    TAN(20) TAN(10)--------- ---------2.2371609 .64836083

    34.TANH返回數字n的雙曲正切值SQL> select tanh(20),tan(20) from dual;

    TANH(20) TAN(20)--------- ---------1 2.2371609

    35.TRUNC按照指定的精度截取一個數SQL> select trunc(124.1666,-2) trunc1,trunc(124.16666,2) from dual;

    TRUNC1 TRUNC(124.16666,2)--------- ------------------100 124.16

    36.ADD_MONTHS增加或減去月份SQL> select to_char(add_months(to_date("199912","yyyymm"),2),"yyyymm") from dual;

    TO_CHA------200002SQL> select to_char(add_months(to_date("199912","yyyymm"),-2),"yyyymm") from dual;

    TO_CHA------199910

    37.LAST_DAY返回日期的最後一天SQL> select to_char(sysdate,"yyyy.mm.dd"),to_char((sysdate)+1,"yyyy.mm.dd") from dual;

    TO_CHAR(SY TO_CHAR((S---------- ----------2004.05.09 2004.05.10SQL> select last_day(sysdate) from dual;

    LAST_DAY(S----------31-5月 -04

    38.MONTHS_BETWEEN(date2,date1)給出date2-date1的月份SQL> select months_between("19-12月-1999","19-3月-1999") mon_between from dual;

    MON_BETWEEN-----------9SQL>selectmonths_between(to_date("2000.05.20","yyyy.mm.dd"),to_date("2005.05.20","yyyy.dd")) mon_betw from dual;

    MON_BETW----------60

    39.NEW_TIME(date,"this","that")給出在this時區=other時區的日期和時間SQL> select to_char(sysdate,"yyyy.mm.dd hh24:mi:ss") bj_time,to_char(new_time2 (sysdate,"PDT","GMT"),"yyyy.mm.dd hh24:mi:ss") los_angles from dual;

    BJ_TIME LOS_ANGLES------------------- -------------------2004.05.09 11:05:32 2004.05.09 18:05:32

    40.NEXT_DAY(date,"day")給出日期date和星期x之後計算下一個星期的日期SQL> select next_day("18-5月-2001","星期五") next_day from dual;

    NEXT_DAY----------25-5月 -01

    41.SYSDATE 用來得到系統的當前日期SQL> select to_char(sysdate,"dd-mm-yyyy day") from dual;

    TO_CHAR(SYSDATE,"-----------------09-05-2004 星期日trunc(date,fmt)按照給出的要求將日期截斷,如果fmt="mi"表示保留分,截斷秒SQL> select to_char(trunc(sysdate,"hh"),"yyyy.mm.dd hh24:mi:ss") hh,2 to_char(trunc(sysdate,"mi"),"yyyy.mm.dd hh24:mi:ss") hhmm from dual;

    HH HHMM------------------- -------------------2004.05.09 11:00:00 2004.05.09 11:17:00

    42.CHARTOROWID 將字元數據類型轉換為ROWID類型SQL> select rowid,rowidtochar(rowid),ename from scott.emp;

    ROWID ROWIDTOCHAR(ROWID) ENAME------------------ ------------------ ----------AAAAfKAACAAAAEqAAA AAAAfKAACAAAAEqAAA SMITHAAAAfKAACAAAAEqAAB AAAAfKAACAAAAEqAAB ALLENAAAAfKAACAAAAEqAAC AAAAfKAACAAAAEqAAC WARDAAAAfKAACAAAAEqAAD AAAAfKAACAAAAEqAAD JONES


    推薦閱讀:

    VS2008+Oracle92 網站發布注意問題 - guthing - 博客園
    CSDN技術中心 SQLServer和Oracle常用函數對比
    告訴我她是順時針還是逆時針旋轉,快被這個女人逼瘋了 ^_^!! - Oracle 10g ...
    糊到蘋果臉上的「新式積分牆」廣告
    《蒼翼之刃》——小CP的全球競爭力

    TAG:函數 | Oracle |