mirror of
				https://github.com/MariaDB/server.git
				synced 2025-11-04 04:46:15 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
# Created for verifying bug#20577.
 | 
						|
# expects TABLE t1 (... , a DATE, ...)
 | 
						|
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a < '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a <= '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a >= '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a > '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a = '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a < '1001-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a <= '1001-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a >= '1001-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a > '1001-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a = '1001-00-00';
 | 
						|
--echo # Disabling warnings for the invalid date
 | 
						|
--disable_warnings
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a < '1999-02-31';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a <= '1999-02-31';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a >= '1999-02-31';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a > '1999-02-31';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a = '1999-02-31';
 | 
						|
--enable_warnings
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
 | 
						|
--sorted_result
 | 
						|
SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
 | 
						|
if ($explain_partitions)
 | 
						|
{
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1001-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1001-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1001-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1001-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1001-00-00';
 | 
						|
--echo # Disabling warnings for the invalid date
 | 
						|
--disable_warnings
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a < '1999-02-31';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a <= '1999-02-31';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a >= '1999-02-31';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a > '1999-02-31';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a = '1999-02-31';
 | 
						|
--enable_warnings
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1002-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0000-00-00' AND '1001-01-01';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-02' AND '1002-00-00';
 | 
						|
EXPLAIN PARTITIONS SELECT * FROM t1 WHERE a BETWEEN '0001-01-01' AND '1001-01-01';
 | 
						|
}
 |