mysql中now,curdate,curtime,sysdate区别

//mysql中now,curdate,curtime,sysdate区别

1.now 返回的时间,格式如下:2013-01-17 10:57:13

mysql> select now(),sleep(5),now();
+---------------------+----------+---------------------+
| now()               | sleep(5) | now()               |
+---------------------+----------+---------------------+
| 2013-01-17 10:57:13 |        0 | 2013-01-17 10:57:13 |
+---------------------+----------+---------------------+
1 row in set (5.01 sec)
其返回的两个值是一样的,因为都是表示语句开始执行的时间。

2. curdate,返回时间的日期,格式如下:2013-01-17

mysql> select curdate(),sleep(5),curdate();
+------------+----------+------------+
| curdate()  | sleep(5) | curdate()  |
+------------+----------+------------+
| 2013-01-17 |        0 | 2013-01-17 |
+------------+----------+------------+
1 row in set (5.00 sec)

3.curtime, 返回时间,格式如下:12:49:26

mysql> select curtime(),sleep(5),curtime();
+-----------+----------+-----------+
| curtime() | sleep(5) | curtime() |
+-----------+----------+-----------+
| 12:49:26  |        0 | 12:49:26  |
+-----------+----------+-----------+
其返回的两个值是一样的,因为都是表示语句开始执行的时间。

4.sysdate 返回时间,格式和time()函数返回时间一样,但是有区别。格式:2013-01-17 13:02:40
mysql> select sysdate(),sleep(5),sysdate();
+---------------------+----------+---------------------+
| sysdate()           | sleep(5) | sysdate()           |
+---------------------+----------+---------------------+
| 2013-01-17 13:02:40 |        0 | 2013-01-17 13:02:45 |
+---------------------+----------+---------------------+

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

区别:除了本身定义所返回的区别以为,另外一个区别是:now(),curtime(),curdate()
      都是返回基于语句的开始执行时间,而sysdate()返回time的值。

其它函数格式显示:
mysql> select now(),curdate(),sysdate(),curtime()\G;
*************************** 1. row ***************************
    now(): 2013-01-17 13:07:53
curdate(): 2013-01-17
sysdate(): 2013-01-17 13:07:53
curtime(): 13:07:53
1 row in set (0.01 sec)

转载于:https://my.oschina.net/u/1260221/blog/738590

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值