日期

收藏999

阅读2628

更新时间2025-08-20

MySQL 日期

处理日期最困难的部分是确保您尝试插入的日期格式与数据库中日期列的格式相匹配。

只要您的数据仅包含日期部分,您的查询就会按预期工作。 但是,如果涉及到时间部分,它就会变得更加复杂。


MySQL 日期数据类型

MySQL 带有以下数据类型,用于在数据库中存储日期或日期/时间值:

  • DATE - 格式 YYYY-MM-DD
  • DATETIME - 格式:YYYY-MM-DD HH:MI:SS
  • TIMESTAMP - 格式:YYYY-MM-DD HH:MI:SS
  • YEAR - 格式 YYYY 或 YY

注意:当您在数据库中创建新表时,会为列设置日期数据类型!


使用日期

请看下表:

Orders 表

OrderId ProductName OrderDate
1 Geitost 2008-11-11
2 Camembert Pierrot 2008-11-09
3 Mozzarella di Giovanni 2008-11-11
4 Mascarpone Fabioli 2008-10-29

现在我们要从上表中选择 OrderDate 为 "2008-11-11" 的记录。

我们使用以下 SELECT 语句:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

结果集将如下所示:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

注意:如果不涉及时间组件,可以轻松比较两个日期!

现在,假设 "Orders" 表如下所示(注意 "OrderDate" 列中添加的时间分量):

OrderId ProductName OrderDate
1 Geitost 2008-11-11 13:23:44
2 Camembert Pierrot 2008-11-09 15:45:21
3 Mozzarella di Giovanni 2008-11-11 11:12:01
4 Mascarpone Fabioli 2008-10-29 14:56:59

如果我们使用与上面相同的 SELECT 语句:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

我们不会得到任何结果! 这是因为查询只查找没有时间部分的日期。

提示:为使您的查询简单且易于维护,请勿在日期中使用时间组件,除非您必须这样做!

相关

视频

RELATED VIDEOS

更多

免费

MySQLi面向过程极速入门
中级 MySQLi面向过程极速入门

127669次学习

收藏

免费

MySQLi面向对象编程极速入门

免费

MySQL权威开发指南(教程)

免费

MySQL高级进阶视频教程
高级 MySQL高级进阶视频教程

122147次学习

收藏

免费

肖文吉Oracle视频教程
初级 肖文吉Oracle视频教程

72226次学习

收藏

免费

魔乐科技oracle视频教程
初级 魔乐科技oracle视频教程

54966次学习

收藏

科技资讯

更多

精选课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

61.9万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

39.4万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

71.1万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

61.8万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

23万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

34万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

125.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号