博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL中SYSDATE()和NOW()的区别
阅读量:5992 次
发布时间:2019-06-20

本文共 757 字,大约阅读时间需要 2 分钟。

hot3.png

MySQL中有5个函数需要计算当前时间的值:now(),sysdate(),curdate(),curtime(),unix_timestamp(); now()和sysdate()都是返回当前时间(形如 yyyy-mm-dd hh:mm:ss); curdate()返回当前时间的日期(形如 yyyy-mm-dd); curtime()返回当前时间(形如 hh:mm:ss) unix_timestam()返回当前时间的时间戳(形如 1464326059)

下面的sql是测试语句:

select now(),sysdate(),curdate(),curtime(),unix_timestamp();

下面是执行结果: 输入图片说明

sysdate()和其他4个函数都是返回当前时间的相关信息,除了本身定义所返回的区别以外,sysdate()是返回执行这个函数的时间,其他4个函数返回语句开始执行时间

sysdate()和now()返回格式相同,拿它们2个做比较体验一下上述说的区别: 下面是sql的测试语句:

select now(),sleep(2),now();select sysdate(),sleep(2),sysdate();

下面是执行结果: 输入图片说明

可以发现now()2个时间是相同的,因为都是取的开始执行sql的时间; 而sysdate()的2个时间不同,因为取的是执行这个函数的时间,2个函数之间sleep了2秒,所以也就相差2秒了。

也正因为有这个区别,我们一般在执行语句的时候,都是用NOW(),因为SYSDATE获取当时实时的时间,这有可能导致主库和从库是执行的返回值是不一样的,导致主从数据不一致。

转载于:https://my.oschina.net/u/1417838/blog/1502786

你可能感兴趣的文章
day4-内置函数
查看>>
day18-Django的CBV和FBV
查看>>
Micropython TurnipBit 青少年入门编程 交通灯实验
查看>>
微信公众平台开发初级教程
查看>>
算法基础
查看>>
Monyer's Game 6~10关过关方法
查看>>
python循环结构
查看>>
第四十五课、创建查找对话框------------------狄泰软件学院
查看>>
编写多线程代码时,启动线程后等待线程结束方法
查看>>
《编码的奥秘》——<绕过拐弯的通信>——读后感!
查看>>
使用 Lookaside List 分配内存
查看>>
error LNK2001: 无法解析的外部符号 __imp__RegEnumKeyExA@32
查看>>
使用Html5的WebSocket在浏览器上传文件
查看>>
log4j配置
查看>>
JQuery中$.ajax()方法参数详解
查看>>
1.5配置NetBackup数据库备份策略(nbu策略catalog)
查看>>
C#日期格式大全
查看>>
web-VR(虚拟现实)
查看>>
原生JS实现购物车结算功能代码+zepto版
查看>>
【转】linux系统中如何进入退出vim编辑器,方法及区别
查看>>