mirror of
https://github.com/MariaDB/server.git
synced 2025-01-28 01:34:17 +01:00
1efdd5a572
(and to follow the naming conventons). keep old debug variable, but mark it as deprecated.
49 lines
2.3 KiB
Text
49 lines
2.3 KiB
Text
# test for BUG#43618 "MyISAM&Maria returns wrong results with
|
|
# 'between' on timestamp"
|
|
|
|
--source include/have_debug.inc
|
|
|
|
set @save_time_zone= @@time_zone;
|
|
set time_zone='+03:00';
|
|
# bug goes away with
|
|
#set session debug_dbug="+d,optimizer_no_icp";
|
|
|
|
######## Running INSERT tests for TIMESTAMP ########
|
|
|
|
# Create tables
|
|
CREATE TABLE t1(c1 TIMESTAMP NOT NULL, c2 TIMESTAMP NULL, c3 DATE, c4 DATETIME, PRIMARY KEY(c1), UNIQUE INDEX(c2));
|
|
|
|
# Insert some rows with targeted values
|
|
|
|
# As a string in either 'YYYY-MM-DD HH:MM:SS', 'YY-MM-DD HH:MM:SS', 'YYYY-MM-DD' or 'YY-MM-DD' format
|
|
INSERT INTO t1 VALUES('98-12-31 11:30:45','98.12.31 11+30+45','98-12-31 11:30:45','98.12.31 11+30+45'),('98/12/30 11*30*45','98@12@30 11^30^45','98/12/30 11*30*45','98@12@30 11^30^45'),('98-12-29','98.12.29','98-12-29','98.12.29'),('98/12/28','98@12@28','98/12/28','98@12@28');
|
|
|
|
# As a string with no delimiters in either 'YYYYMMDDHHMMSS', 'YYMMDDHHMMSS', 'YYYYMMDD' or 'YYMMDD' format
|
|
INSERT INTO t1 VALUES('20070523091528','070523091528','20070524091528','070524091528'),('20070525','070525','20070526','070526');
|
|
|
|
# As a number in either YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD or YYMMDD format
|
|
INSERT INTO t1 VALUES(19830905132800,830905132800,19830906132800,830906132800),(19830907,830907,19830908,830908);
|
|
|
|
# As the result of a function
|
|
SET TIMESTAMP=1233216687; # 2009-01-29 13:41:27
|
|
INSERT INTO t1 VALUES(NOW(),CURRENT_DATE,NOW(),CURRENT_DATE);
|
|
|
|
# Insert permissible NULLs
|
|
INSERT INTO t1 VALUES('2008-01-01',NULL,'08-01-02','08/01/03');
|
|
|
|
# Insert duplicate NULLs to unique column
|
|
INSERT INTO t1(c1,c2) VALUES('08/01/17',NULL);
|
|
DELETE FROM t1 WHERE c1='08/01/17' AND c2 IS NULL;
|
|
|
|
# Insert empty string '', would be converted to zero value of the appropriate type
|
|
INSERT INTO t1 VALUES('','','08-01-04','08/01/05') /* Inserts zero dates for '' strings */;
|
|
|
|
INSERT INTO t1 VALUES('1971-01-01 00:00:01','1980-01-01 00:00:01','2009-01-01','2009-01-02'),('1990-01-01 00:00:01','2000-01-01 00:00:01','2009-01-03','2009-01-04'),('2038-01-09 03:14:07','2038-01-09 03:14:07','2009-01-05','2009-01-06');
|
|
|
|
--sorted_result
|
|
SELECT * FROM t1;
|
|
SELECT * FROM t1 WHERE c1 BETWEEN '0000-00-00' AND '2010-00-01 00:00:00' ORDER BY c1 DESC LIMIT 2;
|
|
SELECT * FROM t1 WHERE c2 BETWEEN '1971-01-01 00:00:01' AND '2010-10-00 00:00:00' ORDER BY c2 DESC LIMIT 2;
|
|
DROP TABLE t1;
|
|
set time_zone= @save_time_zone;
|
|
|