单行函数(日期函数)

    oracle 默认的日期格式为 dd-mon-yyyy     select sysdate from dual;

d            表示2位数的日
mon/month    表示月份,如:6月
mm            表示2位数的月,如:06
yyyy        表示4位数的年份
HH24        表示24小时
HH            表示12小时
mi            表示分钟
ss            表示秒
fm            表示去掉前面的0,如:fm 06,值为6
day            表示星期几
months_between ( date1,date 2)         :2个日期之前月数

add_months(date,n)     这个date日期 加上n个月   n可为负数

next_day(date,'星期几')          date  下个星期几

last_day(date)                         date 当月的月底日期

补充:
修改当前会话语言环境:
alter session set nls_language = 'american';//改为英文
alter session set nls_language = 'simplified chinese';//改为简体中文

修改当前会话日期格式:
alter session set nls_date_formate='yyyy-mm-dd HH24:mi:ss';//改为年月日时分秒
转换函数

to_number   字符转换成数字  select to_number('9837492.563','999999999.999') from dual         

to_date  字符转换成日期         select to_date('2009-10-3 15:10:23','yyyy-mm-dd hh24:mi:ss') from dual

to_char:日期/数字 转换成 字符            
                     select to_char (sysdate,'yyyy-mm-dd hh24:mi:ss')     from dual    
                     select to_char(9837492,'$999,999,999.99') from dual            
                     select to_char(9837492.563,'999999999.99') from dual                  转换成字符串    字符串可比数字少一位  结果也少一位                                 字符串少一位可以

extract(年|月|日   from   date)   得到 年|月|日    :提取

select extract(year from sysdate) 
      ,extract(month from syadate)
      ,extract(day from syadate 
      ,extract(minute from syadate
      ,extract(second from syadate
      ,extract(timezone_hour from syadate)  
      ,extract(timezone_minute from syadate)  
      ,extract(timezone_region from syadate)   
      ,extract(timezone_abbr from syadate)   
from dual  


4.把数字格式化为字符窜的时候可以用一些符号
    9 代表任意数据
    L 代表本地的货币符号
    $ 代表美元
    0 代表0
    . 代表.
    , 代表,
   

原文地址:https://www.cnblogs.com/w-xibao/p/7782279.html