1. 日期时间函数的输入是date和timestamp型函数。除了month_between返回的是数字值之外,其他函数返回的都是日期型函数。
2. Oracle默认的日期格式是dd-mon-yy。但是可以在每个会话中使用下面的命令来更换这个格式。
Alter Session set nls_date_format = ‘dd-mon-yyyy hh24:mi:ss’
如果需要更改会话的时区,使用下面的命令
Alter Session set time_zone = ‘-05:00’;
还可以更换数据库时区(更换之后,相关实例必须重启之后才能生效)
Alter database set time_zone = ‘-05:00’;
3. 单行日期函数
Add_months(date,n)将日期date增加n个月
4. 函数current_date 返回当前会话时区的当前日期
5. 函数current_timestamp(n)返回当前会话时区的日期时间,n为秒的精度,默认为6
6. 函数DBTIMEZONE返回数据库所在的时区
7. 函数Extract(c,from d)返回日期d中被指定的c的部分,参数c可以是year、month、day、min、second、timezone_hour、timezone_minute、timezone_region、timezone_abbr
8. 函数last_day(d)返回日期d所在月份的最后一天
9. Month_between(d1,d2)返回日期d1和d2之间相差的月份数,如果d1小于d2,则返回负数;如果d1和d2天数相同或者都是月底,则返回整数;否则oracle以每月31天来计算相差的小数值
10. Next_day(d,c)返回日期d后的下一个c,c可以是星期一、星期二等
11. Round(d,fmt)返回日期d的四舍五入结果,如果fmt为year,则以7月1日为分界线;如果fmt为month,则以16日为分界线;如果fmt为day,则以中午12:00为分界线。
12. 函数trunc(d,fmt)返回日期d的截断日期,如果fmt为year,则返回本年一月一日;如果fmt为month,则返回本年本月一日;如果fmt为day,则返回的日期,天数的个位为0。
13. 单行转换函数cast(c as t)将表达式c转换为数据类型t,t可以是数据库内建的数据类型,也可以是程序员自定义的数据类型。
Select cast(system as varchar2(24)) from dual;
14. 疑问:函数numtodsinterval(n,c)把数字n转换成c指定的interval day to second类型的数据,其中c可以是day、minute、secon、hour。什么是interval day to second?
还有一个类似的函数numyminterval(n,c)
15. 函数to_char(x,fmt)返回将x按照fmt格式转换后的字符串,x可以是日期或者数字,fmt是一个规定了x按照何种格式进行转换的格式字符串。类似函数to_date(n,c)
16. 其他函数,不想写了,截图片看吧,很容易理解
终于看完前六章了,心理暗爽一把