养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

oracle时间类型的使用

时间:2024-10-04 03:28:01

在写程序时常常需要用到时间类型,在统计时间数字时,常常需要用到。下面来简单的介绍几个时间的获取方法

工具/原料

plsql

笔记本电脑

方法/步骤

1、在计算时,最常用的便是获取当前的时间。例如:selectextract(yearfromsysdate) fromdual;--当前年selectextract(monthfromsysdate)fromdual;--本年到当月的月数selectextract(dayfromsysdate) fromdual;--本月到当日

oracle时间类型的使用

2、也可以这么获取,例如:selectextract(yearfromdate'2018-10-15')yearfromdual;--获取时间类型的年selectextract(monthfromdate'2018-10-15')monthfromdual;--获取时间类型的月selectextract(dayfromdate'2018-10-15')dayfromdual;--获取时间类型的日

oracle时间类型的使用

3、也可以获取字符类型的日期,ORACLE里获取一个时间的年、季、月、周、日的函数。例如:selectto_char(sysdate,'MM')fromdual;--月selectto_char(sysdate,'dd')fromdual;--日selectto_char(sysdate,'Q')fromdual;--获取当年日历上的季selectto_char(sysdate,'iw')fromdual;--周--获取当年日历上的周数

oracle时间类型的使用

4、也可以进行时间的类型转换,例如:selectto_char(sysdate,'yyyy-MM-ddHH24:mi:ss')fromdual;--获取当前时间的字符型selectSYSDATEfromdual;--获取当前时间的日期类型selectto_char(sysdate,'yy-mm-ddhh24:mi:ss')fromdual--获取当前时间的格式selectto_date('2018-1-2514:23:31','yyyy-mm-dd,hh24:mi:ss')fromdual--获取时间类型

oracle时间类型的使用

5、也可以进行复杂的时间格式的获取,例如:以这样的时间格式显示:年-月-日-24制小时-分颍骈城茇-秒-上/下午-星期中文;selectto_char(sysdate,'yyy烤恤鹇灭y-mm-dd:hh24:mi:ss:pm:dy')fromdual;--获取6月天数--selectto_char(last_day(to_date('2018-06-1','YYYY-MM-DD')),'DD')fromdual;--获取1月天数--selectto_char(last_day(to_date('2018-1-1','YYYY-MM-DD')),'DD')fromdual;--显示上个礼拜一到礼拜日SELECTto_char(SYSDATE,'yyyymmdd')-to_number(to_char(SYSDATE,'d')-1)-6,to_char(SYSDATE,'yyyymmdd')-to_number(to_char(SYSDATE,'d')-1)fromdual

oracle时间类型的使用

6、也能获取上个月的最后一天、上个月的第一天,例如:selectsysdatefromdual--结果:2018/4/2115:34:05--取上个月最后一天SELECTTO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-1)),'YYYYMMDD')FROMDUAL;--结果:20180331--取上个月第一天SELECTTO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-2))+1,'YYYYMMDD')FROMDUAL;--结果:20180301

oracle时间类型的使用

7、运腩柽鬣盛用到时间类型一般和trunc函数配合使用,TRUNC函数为指定元素而截去的日期值。接下来演示几个trunc的简单使用。例如:selecttrunc(sysdate)from惺绅寨瞀dual--2018/4/21今天的日期为2018/4/21selecttrunc(sysdate,'mm')fromdual--2018/4/1返回当月第一天.selecttrunc(sysdate,'yy')fromdual--2018/1/1返回当年第一天selecttrunc(sysdate,'dd')fromdual--2018/4/21返回当前年月日selecttrunc(sysdate,'yyyy')fromdual--2018/1/11返回当年第一天selecttrunc(sysdate,'d')fromdual--2018/4/15(今天是2018/4/2)返回当前星期的第一天selecttrunc(sysdate,'hh')fromdual--2018/4/2115:00:00当前时间selecttrunc(sysdate,'mi')fromdual--2018/4/2115:38:00TRUNC()函数没有秒的精确

oracle时间类型的使用

© 一点知识