美文网首页
Mysql 日期时间类型详解

Mysql 日期时间类型详解

作者: MayerBin | 来源:发表于2019-09-30 00:55 被阅读0次

    日期和时间类型

    表示时间值的日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。
    每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。
    TIMESTAMP类型有专有的自动更新特性,将在后面描述。

    image.png

    这些数据类型的主要区别如下:

     * 如果要用来表示年月日,通常用DATE 来表示。
     * 如果要用来表示年月日时分秒,通常用DATETIME 表示。
     * 如果只用来表示时分秒,通常用TIME 来表示。
     * 如果需要经常插入或者更新日期为当前系统时间,则通常使用TIMESTAMP 来表示。
    (datetime、timestamp精确度都是秒,datetime与时区无关,存储的范围广(1001-9999),timestamp与时区有关,存储的范围小(1970-2038)。

    MySQL时间戳与时间格式的转换

    1、时间戳的定义

    • 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数

    2、时间格式转时间戳的方法
    unix_timestamp:

    • 作用:date类型数据转换成timestamp形式整数

    用法:

    (1)select unix_timestamp();

    (2)select unix_timestamp('2013-01-01 10:10:10');

    3、时间戳转时间格式的方法
    from_unixtime:

    • 作用:将timestamp形式整数转化为date类型

    用法:

    (1)select from_unixtime(1355272360);

    (2)select from_unixtime(1355272360,'%Y%m%d %H:%i:%s');指定输出格式

    4、关于mysql 时间戳的限制
    目前timestamp所能表示的范围在1970 - 2038之间,超过这个范围得到的时间将会溢出得到的时间是null

    # Mysql 日期时间类型详解

    # MySQL 中 datetime 和 timestamp 的区别与选择

    MySQL时间戳与时间格式的转换

    MySQL日期 字符串 时间戳互转

    相关文章

      网友评论

          本文标题:Mysql 日期时间类型详解

          本文链接:https://www.haomeiwen.com/subject/udncuctx.html