PHP和MySQL能识别的最大日期是多少?
我的意思是,我对不同的时间线有不同的值,我想把它们都作为MySQL中的BETWEEN选择,如下所示:
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';等。
为了获得所有选项,我想了这样的想法:
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';这是否总是有效,或者代码是否有可能在某一时刻崩溃?
发布于 2012-11-01 22:21:15
DATE类型用于包含日期部分但不包含时间部分的值。MySQL以'YYYY-MM-DD‘格式检索和显示日期值。支持的范围是'1000-01-01‘到'9999-12-31’。
发布于 2012-11-01 22:22:39
以下是不同的日期范围,具体取决于您的列类型:
日期类型用于具有日期部分但没有时间部分的值。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‘协调世界时。
发布于 2012-11-01 22:23:04
MySQL的DATETIME类型支持从1000-01-01到9999-12-31。这应该足够了。
PHP也可以分析这些年份;它们不是两位数的年份,所以它很好。我刚刚在9999-01-01上运行strtotime,它起作用了。
https://stackoverflow.com/questions/13178858
复制相似问题