列的类型定义——日期和时间类型

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 前言 日期与时间类型是为了方便在数据库中存储日期和时间而设计的,数据库有多种表示日期和时间的数据类型。其中,YEAR类型表示年,DATE类型表示日期,TIME类型表示时间,DATETIME和TIMESTAMP表示日期和时间。下面从这5种日期与时间类型的字节数、取值范围和零值等方面进行对比,如下表所示。

前言

       日期与时间类型是为了方便在数据库中存储日期和时间而设计的,数据库有多种表示日期和时间的数据类型。其中,YEAR类型表示年,DATE类型表示日期,TIME类型表示时间,DATETIME和TIMESTAMP表示日期和时间。下面从这5种日期与时间类型的字节数、取值范围和零值等方面进行对比,如下表所示。


提示:以下是本篇文章正文内容,下面案例可供参考

一、类型表

746869e760794a92a5dd500f147205e5.png


二、类型简介


每种日期与时间类型都有一个有效范围。如果插入的值超过了这个范围,系统就会报错,并将零值插入到数据库中。不同的日期与时间类型均有不同的零值.

       插入日期时间时,日期年月日和时间时分秒可以使用 “: - _ / ”中的任意字符来分隔,如果单独插入时间,则会报错!!!

mysql> use test;   #选择数据库test


mysql> create table date_example (e_date date, e_datetime datetime, e_timestamp


timestamp, e_time time, e_year year);  #创建表dt_example


mysql> insert into date_example values('2020-5-9', '2020-5-9 15:01:00', '2020-05-09 15:01:00', '15:56:01', 2011);


mysql> insert into date_example values('2020_5/9', '2020:5-9 15/01-00', '2020:05/09 15-01_00',  '15:56:01', '2011');   #效果同上面插入语句

也可以通过mysql 本身提供的时间函数获取:


常用的时间函数:


CURDATE()  - 获得当前的DATE, 可直接插入DATE 类型中.


NOW() - 获得当前的DATETIME, 可直接插入DATETIME 和TIMESTAMP类型中.


TIME() - 获取参数给定时间串中的时分秒,可直接插入TIME 类型中.


YEAR() - 获取参数给定时间串中的年份,可直接插入YEAR类型中.


MONTH() 、DAY()、HOUR()、MINUTE()、SECOND() 获取参数给定时间串中的月、日、时、分、秒值.

mysql> use test;   #选择数据库test

mysql> insert into date_example values(CURDATE(), NOW(), NOW(), time(NOW()), YEAR(NOW()) );


总结


CURDATE()  - 获得当前的DATE, 可直接插入DATE 类型中.


NOW() - 获得当前的DATETIME, 可直接插入DATETIME 和TIMESTAMP类型中.


TIME() - 获取参数给定时间串中的时分秒,可直接插入TIME 类型中.


YEAR() - 获取参数给定时间串中的年份,可直接插入YEAR类型中.

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
30天前
|
关系型数据库 MySQL
日期和时间类型
日期和时间类型。
10 2
PosgreSql日期和时间戳相互转换
PosgreSql日期和时间戳相互转换
|
10月前
|
存储 JavaScript 前端开发
数值的扩展方法以及新增数据类型BigInt
数值的扩展方法以及新增数据类型BigInt
66 0
dateTime怎么根据日期(年月日)查找数据
dateTime怎么根据日期(年月日)查找数据
117 0
dateTime怎么根据日期(年月日)查找数据
|
SQL 数据可视化 Java
JPA解决时间类型不一致导致索引不生效
JPA解决时间类型不一致导致索引不生效
|
编解码
时间类型
时间类型
123 0
|
关系型数据库 MySQL
开发指南—数据类型—日期和时间类型
本文介绍了PolarDB-X支持的日期时间类型。
|
数据库
列的数据类型讲解
列的数据类型讲解
|
关系型数据库 MySQL PHP
MySQL数据库(9):数据类型-时间日期类型
MySQL数据库(9):数据类型-时间日期类型
122 0
MySQL数据库(9):数据类型-时间日期类型
|
存储 自然语言处理 索引
字段数据类型
字段数据类型
132 0