本篇文章给大家谈谈current time是什么意思、读音,以及一文看懂mysql时间函数now()、current_timestamp() 和sysdate()对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
1、今天主要介绍一下mysql中时间函数now()current_timestamp()和sysdate()以及三者之间的比较。
2、在mysql中有三个时间函数用来获取当前的时间,分别是now()、current_timestamp()和sysdate()
3、这三个函数都可以获得当前的时间,例如
4、selectnow(),current_timestamp(),sysdate()\\G
这里看起来是没有什么不同的,但是翻阅mysql官方的文档可以发现
5、CURRENT_TIMESTAMPandCURRENT_TIMESTAMP()aresynonymsforNOW().
6、也就是说CURRENT_TIMESTAMP和CURRENT_TIMESTAMP()都是NOW()这个函数的同义词,所以作用是一致的,而sysdate()函数的解释是
7、SYSDATE()returnsthetimeatwhichitexecutes.ThisdiffersfromthebehaviorforNOW(),whichreturnsaconstanttimethatindicatesthetimeatwhichthestatementbegantoexecute.(Withinastoredfunctionortrigger,NOW()returnsthetimeatwhichthefunctionortriggeringstatementbegantoexecute.)
8、简单来说,now()(current_timestamp())函数获得的是语句开始执行时的时间,而sysdate()函数是这个函数执行时候的时间。
9、使用sleep()函数延时,预期结果是延时前后now()函数对应的时间不变,sysdate()的时间等于之前的时间加上延时时间
10、selectnow(),current_timestamp(),sysdate(),\nsleep(5),\nnow(),current_timestamp(),sysdate(),\nsleep(10),\nnow(),current_timestamp(),sysdate()\n\\G
在上面这个例子因为人为加入了sleep函数,让其等待5秒和10秒,可以发现sysdate返回的函数跟其他是不一样的,究其原因是这3个函数的略微区别:
11、1)current_timestamp是now的同义词,也就是两者是相同的
12、2)sysdate函数返回执行当前函数的时间,而now返回执行SQL语句时的时间。所以两次执行sysdate函数返回不同的时间是因为第二次调用执行该函数时等待了前面SLEEP函数5秒,而对于now函数,不管在sleep之前还是之后执行,返回都是执行这条sql语句的时间。
13、觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!