mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
Dec. 31st, 9999 is still a valid date, only starting with Jan 1st 10000 things become invalid (Bug #12356)
mysql-test/r/func_sapdb.result: test cases for date range edge cases added mysql-test/r/func_time.result: test cases for date range edge cases added mysql-test/t/func_sapdb.test: test cases for date range edge cases added mysql-test/t/func_time.test: test cases for date range edge cases added
This commit is contained in:
@ -71,6 +71,12 @@ makedate(1997,1)
|
||||
select makedate(1997,0);
|
||||
makedate(1997,0)
|
||||
NULL
|
||||
select makedate(9999,365);
|
||||
makedate(9999,365)
|
||||
9999-12-31
|
||||
select makedate(9999,366);
|
||||
makedate(9999,366)
|
||||
NULL
|
||||
select addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002");
|
||||
addtime("1997-12-31 23:59:59.999999", "1 1:1:1.000002")
|
||||
1998-01-02 01:01:01.000001
|
||||
|
@ -352,6 +352,12 @@ extract(SECOND FROM "1999-01-02 10:11:12")
|
||||
select extract(MONTH FROM "2001-02-00");
|
||||
extract(MONTH FROM "2001-02-00")
|
||||
2
|
||||
SELECT DATE_SUB(str_to_date('9999-12-31 00:01:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE);
|
||||
DATE_SUB(str_to_date('9999-12-31 00:01:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE)
|
||||
9999-12-31 00:00:00
|
||||
SELECT DATE_ADD(str_to_date('9999-12-30 23:59:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE);
|
||||
DATE_ADD(str_to_date('9999-12-30 23:59:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE)
|
||||
9999-12-31 00:00:00
|
||||
SELECT "1900-01-01 00:00:00" + INTERVAL 2147483648 SECOND;
|
||||
"1900-01-01 00:00:00" + INTERVAL 2147483648 SECOND
|
||||
1968-01-20 03:14:08
|
||||
|
@ -37,6 +37,8 @@ select weekofyear("1997-11-31 23:59:59.000001");
|
||||
|
||||
select makedate(1997,1);
|
||||
select makedate(1997,0);
|
||||
select makedate(9999,365);
|
||||
select makedate(9999,366);
|
||||
|
||||
#Time functions
|
||||
|
||||
|
@ -139,6 +139,12 @@ select extract(MINUTE_SECOND FROM "10:11:12");
|
||||
select extract(SECOND FROM "1999-01-02 10:11:12");
|
||||
select extract(MONTH FROM "2001-02-00");
|
||||
|
||||
#
|
||||
# MySQL Bugs: #12356: DATE_SUB or DATE_ADD incorrectly returns null
|
||||
#
|
||||
SELECT DATE_SUB(str_to_date('9999-12-31 00:01:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE);
|
||||
SELECT DATE_ADD(str_to_date('9999-12-30 23:59:00','%Y-%m-%d %H:%i:%s'), INTERVAL 1 MINUTE);
|
||||
|
||||
#
|
||||
# Test big intervals (Bug #3498)
|
||||
#
|
||||
|
Reference in New Issue
Block a user