sysdate 和 current_date 的区别
在oracle中current_date与sysdate都是显示当前系统时间, 其结果基本相同,但是有三点区别:
1. current_date返回的是当前会话时间,而sysdate返回的是服务器时间;
2. current_date有时比sysdate快一秒,这可能是四舍五入的结果;
3. 如果修改当前会话的时区,比如将中国的时区为东八区,修改为东九区,则current_date显示的时间为东九区时间, 根据东加西减的原则,current_date应该比sysdate快一小时。
实例:
1 alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
2 20:01:26 SQL> select current_date,sysdate from dual;
3 CURRENT_DATE SYSDATE
4
5 2009-03-10 20:01:37 2009-03-10 20:01:37
1 20:01:43 SQL> select current_date,sysdate from dual;
2 CURRENT_DATE SYSDATE
3
4 2009-03-10 20:01:44 2009-03-10 20:01:43
注意:current_date与sysdate快了一秒。
修改当前会话时区为东九区:
1 alter session set time_zone='+09:00'
2 20:04:19 SQL> select current_date,sysdate from dual
3 CURRENT_DATE SYSDATE
4
5 2009-03-10 21:04:22 2009-03-10 20:04:22
注意
在pg日期中中SYSDATE是不存在的,存在如下:
select now(),CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP ;
select CURRENT_DATE
select NOW()
在这里进行当天时间与数据库时间的比较:
数据库时间格式为:tv_date:2020-08-06 10:37:07
select<include refid&#61;"Base_Column_List"/>from t_syswhere user_id &#61; &#39;123&#39; AND to_char( CURRENT_DATE, &#39;YYYY-MM-DD&#39; ) &#61; to_char( tv_date, &#39;YYYY-MM-DD&#39;)
这里是一个真诚的***青年技术交流QQ群:761374713***&#xff0c;不管你是大学生、社畜、想学习变成的其他人员&#xff0c;欢迎大家加入我们&#xff0c;一起成长&#xff0c;一起进步&#xff0c;真诚的欢迎你&#xff0c;不管是技术&#xff0c;还是人生&#xff0c;还是学习方法。有道无术&#xff0c;术亦可求&#xff0c;有术无道&#xff0c;止于术。