首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP和MySQL可能的最小和最大日期

问PHP和MySQL可能的最小和最大日期
EN

Stack Overflow用户
提问于 2012-11-01 22:10:52
回答 6查看 17.7K关注 0票数 9

PHP和MySQL能识别的最大日期是多少?

我的意思是,我对不同的时间线有不同的值,我想把它们都作为MySQL中的BETWEEN选择,如下所示:

代码语言:javascript
复制
SELECT * FROM table WHERE date BETWEEN '2011-10-01' AND '2011-10-02';
SELECT * FROM table WHERE date BETWEEN '2011-10-03' AND '2011-10-10';

等。

为了获得所有选项,我想了这样的想法:

代码语言:javascript
复制
SELECT * FROM table WHERE date BETWEEN '0000-01-01' AND '2011-10-01';
SELECT * FROM table WHERE date BETWEEN '2011-10-02' AND '2011-10-10';
SELECT * FROM table WHERE date BETWEEN '2011-10-11' AND '9999-12-31';

这是否总是有效,或者代码是否有可能在某一时刻崩溃?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-11-01 22:21:15

DATE类型用于包含日期部分但不包含时间部分的值。MySQL以'YYYY-MM-DD‘格式检索和显示日期值。支持的范围是'1000-01-01‘到'9999-12-31’。

摘自http://dev.mysql.com/doc/refman/5.5/en/datetime.html

票数 27
EN

Stack Overflow用户

发布于 2012-11-01 22:22:39

以下是不同的日期范围,具体取决于您的列类型:

As per docs

日期类型用于具有日期部分但没有时间部分的值。MySQL以'YYYY-MM-DD‘格式检索和显示日期值。支持的范围是'1000-01-01‘到’9999-12-31‘。

DATETIME类型用于同时包含日期和时间部分的值。MySQL以'YYYY-MM-DD HH:MM:SS‘格式检索和显示日期时间值。支持的范围是'1000-01-01 00:00:00‘到'9999-12-31 23:59:59’。

TIMESTAMP数据类型用于同时包含日期和时间部分的值。时间戳的范围为‘1970-01-01 00:00:01’协调世界时到'2038-01-19 03:14:07‘协调世界时。

票数 10
EN

Stack Overflow用户

发布于 2012-11-01 22:23:04

MySQL的DATETIME类型支持从1000-01-01到9999-12-31。这应该足够了。

PHP也可以分析这些年份;它们不是两位数的年份,所以它很好。我刚刚在9999-01-01上运行strtotime,它起作用了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13178858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档