MySQL数据类型 您所在的位置:网站首页 mysql字符型数据类型主要包括 MySQL数据类型

MySQL数据类型

2024-07-18 05:54| 来源: 网络整理| 查看: 265

在MySQL关系型数据库中,MySQL支持的数据类型非常丰富。它主要分为3大类,即:数值型,日期时间性,字符型。而实际上这三类数据类型可以进一步的细分扩展,可以根据业务需要选择最适合的一种。本文主要介绍日期时间类型,并演示其用法。

一、日期时间型 MySQL支持的日期时间类型可以进一步细分,即可以分为日期型,时间型,日期时间型,时间戳等。如下图所示: 在这里插入图片描述 二、日期时间型存储需求 在这里插入图片描述

三、日期时间型零值显示 在这里插入图片描述

四、日期时间型演示

mysql> show variables like 'version'; +---------------+------------+ | Variable_name | Value | +---------------+------------+ | version | 5.7.22-log | +---------------+------------+ mysql; CREATE TABLE tb_date_time -; ( -; col1 date, -; col2 time, -; col3 datetime, -; col4 timestamp DEFAULT current_timestamp -; ); Query OK, 0 rows affected (0.17 sec) mysql; select 'Leshami' as Author -; union all -; select 'http://blog.csdn.net/leshami'; +------------------------------+ | Author | +------------------------------+ | Leshami | | http://blog.csdn.net/leshami | +------------------------------+ mysql; INSERT INTO tb_date_time(col1, col2, col3) -; VALUES (now(), now(), now()); Query OK, 1 row affected, 1 warning (0.03 sec) mysql; SELECT * FROM tb_date_time; +------------+----------+---------------------+---------------------+ | col1 | col2 | col3 | col4 | +------------+----------+---------------------+---------------------+ | 2018-09-23 | 18:07:13 | 2018-09-23 18:07:13 | 2018-09-23 18:07:13 | +------------+----------+---------------------+---------------------+ 1 row in set (0.00 sec)

– 查看系统日期时间

mysql; system date Sun Sep 23 18:08:18 CST 2018

– 在mysql层临时修改一下时区,假定在这里修改为+7时区

mysql; set time_zone='+7:00'; Query OK, 0 rows affected (0.00 sec)

– 再次查看表,col4列上的时间则提前了一小时 – 也即是时区会影响时间戳列

mysql; SELECT * FROM tb_date_time; +------------+----------+---------------------+---------------------+ | col1 | col2 | col3 | col4 | +------------+----------+---------------------+---------------------+ | 2018-09-23 | 18:07:13 | 2018-09-23 18:07:13 | 2018-09-23 17:07:13 | +------------+----------+---------------------+---------------------+

注意对比TIMESTAMP与DATETIME TIMESTAMP需要4个字节,而DATETIME需要5个字节。 TIMESTAMP和DATETIME都需要额外的字节来获得小数秒的精度。 TIMESTAMP值的范围为1970-01-01 00:00:01 UTC至2038-01-19 03:14:07 UTC。 如果要存储超过2038的时间值,则应使用DATETIME而不是TIMESTAMP。

– 查看当前时间

mysql; SET @dt = NOW(); Query OK, 0 rows affected (0.03 sec) mysql; SELECT @dt; +---------------------+ | @dt | +---------------------+ | 2018-09-23 18:08:28 | +---------------------+ 1 row in set (0.00 sec) mysql; SELECT DATE(@dt); +------------+ | DATE(@dt) | +------------+ | 2018-09-23 | +------------+ 1 row in set (0.00 sec)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有