• <ul id="mayc0"></ul>
    <ul id="mayc0"><center id="mayc0"></center></ul>
    <strike id="mayc0"><input id="mayc0"></input></strike>
    <ul id="mayc0"></ul>
  • 始創于2000年 股票代碼:831685
    咨詢熱線:0371-60135900 注冊有禮 登錄
    • 掛牌上市企業
    • 60秒人工響應
    • 99.99%連通率
    • 7*24h人工
    • 故障100倍補償
    您的位置: 網站首頁 > 幫助中心>文章內容

    Oracle數據庫函數(單行函數)

    發布時間:  2012/8/26 15:22:17

    Oracle中的函數和C中的函數差不多,也是有函數名,參數表,和返回值類型組成的,單行函數,是針對每條記錄都有一個結果。單行函數可以出現在select 后面,也可以出現在where子句中。

    需要處理現實的結果時,就把函數寫在select后面,用于條件過濾時,就把函數用在where子句中。

    1,字符函數(varchar)
    -
     


    字符是大小寫敏感的
    轉小寫 lower(‘...’)
    轉大寫 upper(‘...’)
    首字母大寫 initcap(‘...’)
    dual表,是專門用于函數測試和運算的,他只有一條記錄
    字符串拼接 concat(‘...’,’....’)
    求指定子串 substr(‘...’,起始位置,取字符個數)(起始位置可以為負)
    求制定字符串的長度length(‘……’)
    可以使用"-"表示從右向左取,取的時候可以從左往友取。
    例:
    select upper(‘test’) from dual;
    select first_name from s_emp where upper(first_name)=’GEORGE’;
    select substr(first_name,-2,2) sub from s_emp;(取后兩個)
    select substr(first_name,2,2) sub from s_emp;(取前兩個)

    2,數值函數(number)

    四舍五入 round(數據,保留小數點后幾位)
    可以用負數表示小數點前,0,表示小數點后第一位,也就是保留個位,-1表示個位(保留到十 位)。
    例:select round(15.36,1) from dual;
    結果:15.4

    截取數字函數 trunc(數據,保留的位數(小數點后位數)) 截取個位之后補0
    例:select trunc(123.456,-1) from dual; 保留倒十位
    結果:120

    3,日期函數

    日期格式,
    全日期格式 世紀信息,年月日,時分秒。
    缺省日期格式,日-月-年 dd-mon-rr
    日期類型是可以進行數學運算的,+1,是下一天,-1,是上一天,數據庫會對數據所隱式的轉換。

    修改當前會話的日期格式,會按照指定的格式輸出日期
    alter session set nls_date_format='yyyy mm dd hh24:mi:ss';

    返回當前日期 sysdate
    例:select sysdate+20 from dual;

    日期是格式敏感的
    求兩個日期間相隔了多少個月 months_between(date1,date2)
    加減指定數量的月份 add_months(date,月數),月數可以為負,負值就是減去相應的月數。
    從下周開始的日期加一天 next_day(date,天數)

    例:select next_day(sysdate,2) from dual;
    返回月末的日期 last_day(date)

    截取日期 trunc(date,'年或月或日或時分秒')
    例:select trunc(add_months(sysdate,1),'month') from dual;

    4,不同數據類型間轉換函數

    將日期轉成字符 tochar(date,'日期格式')
    日期格式要用有效格式,格式大小寫敏感 'yyyy mm dd hh24:mi:ss','year'(全拼的年),'mm'(數字表示的月) 'month'(全拼的月),'day'(星期的全拼),'ddspth' (日期的全拼) 'yy mm dd',’rr-mm-dd’(會根據年份判斷世紀)
    例:select to_char(sysdate,'yyyy mm dd hh24:mi:ss') from dual;

    將字符轉換成數字 to_number('...'),(可以加第二參數,第二參數指定定數字進制)

    將數字轉字符to_char(number,'fmt') fmt是數字格式

    將字符串轉成日期 to_date('...','日期格式')
    例:select to_char(to_date('2006 11 03','yyyy mm dd'),'dd-month-yy')
    from dual;

    5,函數嵌套

    例:select to_char(to_date('2006 11 03','yyyy mm dd'),'dd-month-yy')
    from dual;
     


    本文出自:億恩科技【www.vbseamall.com】

    服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線