mysql中 now() sysdate() curdate() 的区别

  1. mysql> select now(), sleep(5), now();  
  2. +---------------------+----------+---------------------+  
  3. | now()               | sleep(5) | now()               |  
  4. +---------------------+----------+---------------------+  
  5. | 2013-01-17 10:57:13 |        0 | 2013-01-17 10:57:13 |  
  6. +---------------------+----------+---------------------+  
  7. 两个值相同,表示语句开始执行的时间。  
  8.   
  9. -- curdate() 返回当前日期,格式如下:2013-01-17  
  10. mysql> select curdate();  
  11. +------------+  
  12. | curdate()  |  
  13. +------------+  
  14. | 2013-01-17 |  
  15. +------------+  
  16.   
  17. -- curtime(), 返回当前时间,格式如下:12:49:26  
  18. mysql> select curtime(), sleep(5), curtime();  
  19. +-----------+----------+-----------+  
  20. | curtime() | sleep(5) | curtime() |  
  21. +-----------+----------+-----------+  
  22. | 12:49:26  |        0 | 12:49:26  |  
  23. +-----------+----------+-----------+  
  24. 两个值相同,都表示语句开始执行的时间。  
  25.   
  26. -- sysdate() 返回当前日期和时间,格式:2013-01-17 13:02:40  
  27. mysql> select sysdate(), sleep(5), sysdate();  
  28. +---------------------+----------+---------------------+  
  29. | sysdate()           | sleep(5) | sysdate()           |  
  30. +---------------------+----------+---------------------+  
  31. | 2013-01-17 13:02:40 |        0 | 2013-01-17 13:02:45 |  
  32. +---------------------+----------+---------------------+  
  33. 两个值不同,sysdate表示实时的系统时间。  
  34. sysdate() 和 now()的区别,一般在执行SQL语句时,都是用now();  
  35. 因为使用sysdate()时,有可能导致主库和从库执行时返回值不一样,导致主从数据库不一致。  
  36.   
  37. 其它函数格式显示:  
  38. mysql> select now(), curdate(), sysdate(), curtime() \G;  
  39. *************************** 1. row ***********************  
  40.     now(): 2013-01-17 13:07:53  
  41. curdate(): 2013-01-17  
  42. sysdate(): 2013-01-17 13:07:53  
  43. curtime(): 13:07:53  

猜你喜欢

转载自blog.csdn.net/csflvcxx/article/details/80566441