资源描述:
《oracleSQL里常用的时间函数.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、oracleSQL里常用的时间函数,经典推荐相信很多人都有过统计某些数据的经历,比如,要统计财务的情况,可能要按每年,每季度,每月,甚至每个星期来分别统计。那在oracle中应该怎么来写sql语句呢,这个时候Oracle的日期函数会给我们很多帮助。常用日期型函数1。Sysdate当前日期和时间SQL>Selectsysdatefromdual;SYSDATE----------21-6月-052。Last_day本月最后一天SQL>Selectlast_day(sysdate)fromdual;LAST_DAY(S----------30
2、-6月-053。Add_months(d,n)oracleSQL里常用的时间函数,经典推荐相信很多人都有过统计某些数据的经历,比如,要统计财务的情况,可能要按每年,每季度,每月,甚至每个星期来分别统计。那在oracle中应该怎么来写sql语句呢,这个时候Oracle的日期函数会给我们很多帮助。常用日期型函数1。Sysdate当前日期和时间SQL>Selectsysdatefromdual;SYSDATE----------21-6月-052。Last_day本月最后一天SQL>Selectlast_day(sysdate)fromdual
3、;LAST_DAY(S----------30-6月-053。Add_months(d,n)当前日期d后推n个月用于从一个日期值增加或减少一些月份date_value:=add_months(date_value,number_of_months)SQL>Selectadd_months(sysdate,2)fromdual;ADD_MONTHS----------21-8月-054。Months_between(f,s)日期f和s间相差月数SQL>selectmonths_between(sysdate,to_date('2005-11
4、-12','yyyy-mm-dd'))fromdual;MONTHS_BETWEEN(SYSDATE,TO_DATE('2005-11-12','YYYY-MM-DD'))-----------------------------------------------------------4.69667415。NEXT_DAY(d,day_of_week)返回由"day_of_week"命名的,在变量"d"指定的日期之后的第一个工作日的日期。参数"day_of_week"必须为该星期中的某一天。SQL>SELECTnext_day(to_
5、date('20050620','YYYYMMDD'),1)FROMdual;NEXT_DAY(T----------26-6月-056。current_date()返回当前会话时区中的当前日期date_value:=current_dateSQL>columnsessiontimezonefora15SQL>selectsessiontimezone,current_datefromdual;SESSIONTIMEZONECURRENT_DA-------------------------+08:0013-11月-03SQL>alte
6、rsessionsettime_zone='-11:00'2/会话已更改。SQL>selectsessiontimezone,current_timestampfromdual;SESSIONTIMEZONECURRENT_TIMESTAMP----------------------------------------------------11:0012-11月-0304.59.13.668000下午-11:007。current_timestamp()以timestampwithtimezone数据类型返回当前会话时区中的当前日期S
7、QL>selectcurrent_timestampfromdual;CURRENT_TIMESTAMP---------------------------------------------------------------------------21-6月-0510.13.08.220589上午+08:008。dbtimezone()返回时区SQL>selectdbtimezonefromdual;DBTIME-------08:009。extract()找出日期或间隔值的字段值date_value:=extract(date_f
8、ieldfrom[datetime_value
9、interval_value])SQL>selectextract(monthfromsysdate)"ThisMonth"fromdual;T