mysql sysdate调用_mysql now() sysdate() 区别

在mysql中,now()和sysdate()两个函数都可以返回当前时间,但是两者是有区别的。下面我们先来看一下mysql的官方解释:

NOW()returns a constant time that indicates the time at which the statement began to execute.

This differs from the behavior forSYSDATE(), which returns the exact time at which it executes.

now()函数返回语句开始执行的时间;而sysdate()返回函数执行到的时间。

下面给出四种情况来理解两个函数的不同。

mysql> select NOW(),SLEEP(5),NOW();

+---------------------+----------+---------------------+

| NOW()               | SLEEP(5) | NOW()               |

+---------------------+----------+---------------------+

| 2015-09-24 10:19:44 |        0 | 2015-09-24 10:19:44 |

+---------------------+----------+---------------------+

mysql> select SYSDATE(),SLEEP(5),SYSDATE();

+---------------------+----------+---------------------+

| SYSDATE()           | SLEEP(5) | SYSDATE()           |

+---------------------+----------+---------------------+

| 2015-09-24 10:20:53 |        0 | 2015-09-24 10:20:58 |

+---------------------+----------+---------------------+

mysql> select NOW(),SLEEP(5),SYSDATE();

+---------------------+----------+---------------------+

| NOW()               | SLEEP(5) | SYSDATE()           |

+---------------------+----------+---------------------+

| 2015-09-24 10:21:30 |        0 | 2015-09-24 10:21:35 |

+---------------------+----------+---------------------+

mysql> select SYSDATE(),SLEEP(5),NOW();

+---------------------+----------+---------------------+

| SYSDATE()           | SLEEP(5) | NOW()               |

+---------------------+----------+---------------------+

| 2015-09-24 10:22:09 |        0 | 2015-09-24 10:22:09 |

+---------------------+----------+---------------------+

第一条语句:因为now()返回SQL语句开始执行的时间,所以尽管休眠5秒,两次调用的结果一致。

第二条语句:sysdate()返回调用该函数时的时间,所以休眠5秒,两次调用结果相差5秒。

第三条语句:先执行now()返回语句开始执行的时间,然后休眠5秒,所以两次时间相差5秒。

第四条语句:先执行sysdate()返回调用的时间,这个时间就是sql语句开始执行的时间,所以两个时间一致。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值