热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

MySQL中SYSDATE()和NOW()的区别

MySQL中SYSDATE()和NOW()的区别MySQL中有5个函数需要计算当前时间的值:NOW.返回时间,格式如:2012-09-2306:48:28CURDATE,返回时间的日期,格式如:2012-09-23CURTIME,返回时间,格式如:06:48:28UNIX_TIME...

MySQL中SYSDATE()和NOW()的区别
 
MySQL中有5个函数需要计算当前时间的值:
 
NOW.返回时间,格式如:2012-09-23 06:48:28
CURDATE,返回时间的日期,格式如:2012-09-23
CURTIME,返回时间,格式如:06:48:28
UNIX_TIMESTAMP,返回时间整数戳,如:1348408108
SYSDATE,返回时间,格式和time()函数返回时间一样,但是有区别。
除了本身定义所返回的区别以外,另一个区别是:前四个函数都是返回基于语句的开始执行时间,而SYSDATE返回time的值。
通过比较,可以发现这两个函数的区别:
  www.2cto.com  
NOW()执行如下:
 
[sql] 
mysql> select now(),sleep(2),now();  
+---------------------+----------+---------------------+  
| now()               | sleep(2) | now()               |  
+---------------------+----------+---------------------+  
| 2012-09-23 06:54:29 |        0 | 2012-09-23 06:54:29 |   
+---------------------+----------+---------------------+  
1 row in set (2.00 sec)  
其返回的两个值是一样的,因为都是表示语句开始执行的时间。
  www.2cto.com  
SYSDATE执行如下:
[sql] 
mysql> select sysdate(),sleep(2),sysdate();  
+---------------------+----------+---------------------+  
| sysdate()           | sleep(2) | sysdate()           |  
+---------------------+----------+---------------------+  
| 2012-09-23 06:55:00 |        0 | 2012-09-23 06:55:02 |   
+---------------------+----------+---------------------+  
1 row in set (2.01 sec)  
也正因为有这个区别,我们一般在执行语句的时候,都是用NOW(),因为SYSDATE获取当时实时的时间,这有可能导致主库和从库是执行的返回值是不一样的,导致主从数据不一致。
  www.2cto.com  
其上其它函数执行如下:
 
[sql] 
mysql> select now(),sysdate(),curdate(),curtime(),unix_timestamp()\G;  
*************************** 1. row ***************************  
           now(): 2012-09-23 07:00:05  
       sysdate(): 2012-09-23 07:00:05  
       curdate(): 2012-09-23  
       curtime(): 07:00:05  
unix_timestamp(): 1348408805  
1 row in set (0.00 sec)  

推荐阅读
  • 本文介绍了MySQL窗口函数的基本概念、应用场景及常见函数的使用方法。窗口函数在处理复杂查询时非常有用,例如计算每个用户的订单排名、环比增长率、以及动态聚合等。 ... [详细]
  • 解决ADODB连接Access时出现80004005错误的方法
    本文详细介绍了如何解决在使用ADODB连接Access数据库时遇到的80004005错误,包括错误原因分析和具体的解决步骤。 ... [详细]
  • binlog2sql,你该知道的数据恢复工具
    binlog2sql,你该知道的数据恢复工具 ... [详细]
  • 本文详细解析了MySQL中常见的几种错误,并提供了具体的解决方法,帮助开发者快速定位和解决问题。 ... [详细]
  • 七大策略降低云上MySQL成本
    在全球经济放缓和通胀压力下,降低云环境中MySQL数据库的运行成本成为企业关注的重点。本文提供了一系列实用技巧,旨在帮助企业有效控制成本,同时保持高效运作。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 本文介绍了如何通过安装 sqlacodegen 和 pymysql 来根据现有的 MySQL 数据库自动生成 ORM 的模型文件(model.py)。此方法适用于需要快速搭建项目模型层的情况。 ... [详细]
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • 软件测试行业深度解析:迈向高薪的必经之路
    本文深入探讨了软件测试行业的发展现状及未来趋势,旨在帮助有志于在该领域取得高薪的技术人员明确职业方向和发展路径。 ... [详细]
  • 1、编写一个Java程序在屏幕上输出“你好!”。programmenameHelloworld.javapublicclassHelloworld{publicst ... [详细]
  • Hibernate全自动全映射ORM框架,旨在消除sql,是一个持久层的ORM框架1)、基础概念DAO(DataAccessorOb ... [详细]
  • 最适合初学者的编程语言
    本文探讨了适合编程新手的最佳语言选择,包括Python、JavaScript等易于上手且功能强大的语言,以及如何通过有效的学习方法提高编程技能。 ... [详细]
  • 在Android应用开发过程中,开发者经常遇到诸如CPU使用率过高、内存泄漏等问题。本文将介绍几种常用的命令及其应用场景,帮助开发者有效定位并解决问题。 ... [详细]
  • 在中标麒麟操作系统上部署达梦数据库及导入SQL文件
    本文档详细介绍了如何在中标麒麟操作系统上安装达梦数据库,并提供了导入SQL文件的具体步骤。首先,检查系统的发行版和内核版本,接着创建必要的用户和用户组,规划数据库安装路径,挂载安装介质,调整系统限制以确保数据库的正常运行,最后通过图形界面完成数据库的安装。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
author-avatar
许雅惠嘉文意芝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有