自学内容网 自学内容网

MySQL DATETIME 和 DATE

 Part1

在MySQL中,DATETIME 和 DATE 是两种用于存储日期和时间信息的不同数据类型。

DATETIME

  • 定义DATETIME 类型用于存储日期和时间值,格式为 YYYY-MM-DD HH:MM:SS
  • 范围DATETIME 的范围是 '1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'
  • 精度DATETIME 的时间部分可以精确到秒。
  • 用途:适用于需要同时存储日期和时间信息的场景,如记录事件发生的具体时间。

DATE

  • 定义DATE 类型用于存储日期值,格式为 YYYY-MM-DD
  • 范围DATE 的范围是 '1000-01-01' 到 '9999-12-31'
  • 精度DATE 只存储日期,不包含时间信息。
  • 用途:适用于只需要存储日期信息的场景,如记录生日或会议日期。

示例

假设你有一个名为 events 的表,需要记录事件发生的日期和时间,以及事件的截止日期。你可以这样设计表结构:

CREATE TABLE events (
    event_id INT AUTO_INCREMENT PRIMARY KEY,
    event_name VARCHAR(255) NOT NULL,
    event_datetime DATETIME NOT NULL,
    event_end_date DATE NOT NULL
);

在这个例子中,event_datetime 字段使用 DATETIME 类型来存储事件的完整日期和时间,而 event_end_date 字段使用 DATE 类型来存储事件的截止日期。

插入数据

向 events 表中插入数据的示例:

INSERT INTO events (event_name, event_datetime, event_end_date)
VALUES ('公司年会', '2023-12-25 19:00:00', '2023-12-25');

在这个例子中,event_datetime 存储了年会的具体日期和时间,而 event_end_date 只存储了年会的日期部分。

查询数据

查询 events 表中的数据,并格式化日期和时间输出的示例:

SELECT event_name, DATE_FORMAT(event_datetime, '%Y-%m-%d %H:%i:%s') AS formatted_datetime, event_end_date
FROM events;

在这个查询中,DATE_FORMAT 函数用于将 event_datetime 字段的日期和时间格式化为指定的字符串格式。

总之,DATETIME 和 DATE 是MySQL中用于存储日期和时间信息的两种基本数据类型,根据具体需求选择合适的类型来存储数据。


原文地址:https://blog.csdn.net/FlyingJiang/article/details/143628934

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!