最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

MySQL时间日期相关函数使用

来源:动视网 责编:小采 时间:2020-11-09 13:36:03
文档

MySQL时间日期相关函数使用

MySQL时间日期相关函数使用:数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+
推荐度:
导读MySQL时间日期相关函数使用:数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+


数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+------------+| 2010-1

数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。

获取当前日期:

mysql> SELECT curdate();
+------------+
| curdate() |
+------------+
| 2010-11-16 |
+------------+
1 row in set
mysql> SELECT CURRENT_DATE();
+----------------+
| CURRENT_DATE() |
+----------------+
| 2010-11-16 |
+----------------+
1 row in set

获取当前时间:

mysql> SELECT curtime();
+-----------+
| curtime() |
+-----------+
| 12:48:40 |
+-----------+
1 row in set
mysql> SELECT CURRENT_TIME();
+----------------+
| CURRENT_TIME() |
+----------------+
| 12:49:00 |
+----------------+
1 row in set

获取当前时间日期:

mysql> SELECT now();
+---------------------+
| now() |
+---------------------+
| 2010-11-16 12:50:39 |
+---------------------+
1 row in set
mysql> SELECT CURRENT_TIMESTAMP();
+---------------------+
| CURRENT_TIMESTAMP() |
+---------------------+
| 2010-11-16 12:51:01 |
+---------------------+
1 row in set

注意:在一个单一询问中,对诸如NOW() 的函数多次访问总是会得到同样的结果。

日期增减:

DATE_ADD(date,INTERVAL expr type)
DATE_SUB(date,INTERVAL expr type)

这些函数执行日期运算。

  • date 是一个 DATETIME 或DATE值,用来指定起始时间。
  • expr 是一个表达式,用来指定从起始日期添加或减去的时间间隔值。 Expr是一个字符串;对于负值的时间间隔,它可以以一个 '-'开头。
  • type 为关键词,它指示了表达式被解释的方式。
  • 关键词INTERVA及 type 分类符均不区分大小写。
  • MySQL 允许任何expr 格式中的标点分隔符。表中所显示的是建议的 分隔符。若 date 参数是一个 DATE 值,而你的计算只会包括 YEAR、MONTH和DAY部分(即, 没有时间部分), 其结果是一个DATE 值。否则,结果将是一个 DATETIME值。

    指定日期1秒后:

    mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND);
    +----------------------------------------------------+
    | DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 SECOND) |
    +----------------------------------------------------+
    | 2011-01-01 00:00:00 |
    +----------------------------------------------------+
    1 row in set
    

    指定日期1天后:

    mysql> SELECT DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY);
    +-------------------------------------------------+
    | DATE_ADD('2010-12-31 23:59:59', INTERVAL 1 DAY) |
    +-------------------------------------------------+
    | 2011-01-01 23:59:59 |
    +-------------------------------------------------+
    1 row in set
    

    指定日期减去10小时:

    mysql> SELECT DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR);
    +------------------------------------------------------------+
    | DATE_ADD('2011-01-01 00:00:00', INTERVAL '-1 10' DAY_HOUR) |
    +------------------------------------------------------------+
    | 2010-12-30 14:00:00 |
    +------------------------------------------------------------+
    1 row in set
    

    指定日期的一个月前:

    mysql> SELECT DATE_SUB('2011-01-02', INTERVAL 31 DAY);
    +-----------------------------------------+
    | DATE_SUB('2011-01-02', INTERVAL 31 DAY) |
    +-----------------------------------------+
    | 2010-12-02 |
    +-----------------------------------------+
    1 row in set
    

    指定日期的前一天:

    mysql> SELECT date_add('2011-01-01', INTERVAL -1 DAY);
    +-----------------------------------------+
    | date_add('2011-01-01', INTERVAL -1 DAY) |
    +-----------------------------------------+
    | 2010-12-31 |
    +-----------------------------------------+
    1 row in set
    

    将日期时间转换成指定格式:

    DATE_FORMAT(date,format)

    根据format 字符串安排date 值的格式。所有其它字符都被复制到结果中,无需作出解释。注意,'%'字符要求在格式指定符之前。月份和日期说明符的范围从零开始,原因是 MySQL允许存储诸如 '2004-00-00'的不完全日期。

    mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' );
    +-----------------------------------------------------------------+
    | DATE_FORMAT( FROM_UNIXTIME( 1290996580 ), '%Y-%m-%d %H:%i:%s' ) |
    +-----------------------------------------------------------------+
    | 2010-11-29 10:09:40 |
    +-----------------------------------------------------------------+
    1 row in set
    
    mysql> SELECT DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' );
    +---------------------------------------------------------+
    | DATE_FORMAT( FROM_UNIXTIME( 1290996580 ) , '%Y-%m-%d' ) |
    +---------------------------------------------------------+
    | 2010-11-29 |
    +---------------------------------------------------------+
    1 row in set
    

    下面两个函数

    FROM_UNIXTIME(unix_timestamp) ,
    FROM_UNIXTIME(unix_timestamp,format)
    

    返回'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS 格式值的unix_timestamp参数表示,具体格式取决于该函数是否用在字符串中或是数字语境中。

    若format 已经给出,则结果的格式是根据format 字符串而定。 format 可以包含同DATE_FORMAT() 函数输入项列表中相同的说明符。

    mysql> SELECT FROM_UNIXTIME(875996580);
    +--------------------------+
    | FROM_UNIXTIME(875996580) |
    +--------------------------+
    | 1997-10-05 04:23:00 |
    +--------------------------+
    1 row in set
    
    mysql> SELECT FROM_UNIXTIME(875996580) + 0;
    +------------------------------+
    | FROM_UNIXTIME(875996580) + 0 |
    +------------------------------+
    | 19971005042300.000000 |
    +------------------------------+
    1 row in set
    

    MySql unix时间转换成SQLServer适用的时间格式:

    mysql> SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s');
    +------------------------------------------------------+
    | FROM_UNIXTIME(UNIX_TIMESTAMP(), '%Y-%m-%d %H:%i:%s') |
    +------------------------------------------------------+
    | 2010-11-16 19:12:11 |
    +------------------------------------------------------+
    1 row in set
    

    文档

    MySQL时间日期相关函数使用

    MySQL时间日期相关函数使用:数据库应用中对日期和时间的操作是非常常用的,MySQL自带了许多很有用的函数,可以帮助我们便捷地实现某些需求。下面我们来介绍一下相关的MySQL日期与实践函数。 获取当前日期: mysql> SELECT curdate();+------------+| curdate() |+
    推荐度:
    标签: 时间 使用 日期
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top