oracle时间函数,new_day()

来源:互联网 发布:mac 安装git 环境 编辑:程序博客网 时间:2024/06/03 13:47

闲话不说,直接进入主题。
一,首先我的实验都是在虚表中进行的。当然,也有人叫做伪表,就是dual。
dual简单说下。dual说他是虚表,其实其中没有存什么数据;再则,我们查询的格式都是select * from table,所以查询一些特殊的东西也需要表来保证格式的完整,所以有:

    //查询系统时间     select sysdate from dual;     //自动生成序列,该序列全球唯一,所以,字符长度长,内存占用大     select sys_guid() from dual;

二,时间函数
1.new_day(datetime,String str) 这个字面是明天,但其实表示下一个星期几的,所以,看例子:

select new_day(sysdate,'monday') from dual;select new_day(sysdate,'2') from dual;

就是说要从当前时间查询到写一个星期几的时间,第一句,按照英文,实际是星期几就是星期几,第二个数字,采用的是西方的方式,1代表周日,2代表周一,一次类推,7代表周六,别的数字错误。有的这样也是正确的:

select new_day(sysdate,'星期一') from dual;

但,很遗憾,我的报错了。
特别注意的是:这个表示只是下一个星期几的日期,就是说,如果现在是星期四,那么,你查找周日到周四都是下一个礼拜的,以为这个时间已经度过了,但是周五到到周六没有过,所以显示本周的

例子不上插图,有兴趣的自己运行就可以,不得不吐槽,这个博客截图插图真麻烦。