summaryrefslogtreecommitdiff
path: root/mysql-test/main/type_int.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/main/type_int.test')
-rw-r--r--mysql-test/main/type_int.test78
1 files changed, 78 insertions, 0 deletions
diff --git a/mysql-test/main/type_int.test b/mysql-test/main/type_int.test
new file mode 100644
index 00000000000..271b4d5862a
--- /dev/null
+++ b/mysql-test/main/type_int.test
@@ -0,0 +1,78 @@
+--echo #
+--echo # Start of 10.1 tests
+--echo #
+
+--echo #
+--echo # MDEV-8741 Equal field propagation leaves some remainders after simplifying WHERE zerofill_column=2010 AND zerofill_column>=2010
+--echo #
+
+CREATE TABLE t1 (a INT ZEROFILL);
+INSERT INTO t1 VALUES (2010),(2020);
+EXPLAIN EXTENDED SELECT * FROM t1 WHERE a=2010 AND a>=2010;
+DROP TABLE t1;
+
+--echo #
+--echo # MDEV-8369 Unexpected impossible WHERE for a condition on a ZEROFILL field
+--echo #
+CREATE TABLE t1 (a INT ZEROFILL);
+INSERT INTO t1 VALUES (128),(129);
+SELECT * FROM t1 WHERE a=128;
+SELECT * FROM t1 WHERE hex(a)='80';
+SELECT * FROM t1 WHERE a=128 AND hex(a)='80';
+EXPLAIN EXTENDED
+SELECT * FROM t1 WHERE a=128 AND hex(a)='80';
+DROP TABLE t1;
+
+--echo #
+--echo # End of 10.1 tests
+--echo #
+
+--echo #
+--echo # Start of 10.2 tests
+--echo #
+
+--echo #
+--echo # MDEV-9393 Split Copy_field::get_copy_func() into virtual methods in Field
+--echo #
+
+# DECIMAL -> INT
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (10.1),(10.9);
+SELECT * FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a DECIMAL(10,2));
+INSERT INTO t2 VALUES (10.1),(10.9);
+INSERT INTO t1 SELECT a FROM t2;
+SELECT * FROM t1;
+DROP TABLE t1,t2;
+
+CREATE TABLE t1 (a DECIMAL(10,2));
+INSERT INTO t1 VALUES (10.1),(10.9);
+ALTER TABLE t1 MODIFY a INT;
+SELECT * FROM t1;
+DROP TABLE t1;
+
+# TIME -> INT
+CREATE TABLE t1 (a INT);
+INSERT INTO t1 VALUES (TIME'00:00:10.1'),(TIME'00:00:10.9');
+SELECT * FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a TIME(1));
+INSERT INTO t2 VALUES (10.1),(10.9);
+INSERT INTO t1 SELECT a FROM t2;
+SELECT * FROM t1;
+DROP TABLE t1,t2;
+
+CREATE TABLE t1 (a TIME(1));
+INSERT INTO t1 VALUES (10.1),(10.9);
+ALTER TABLE t1 MODIFY a INT;
+SELECT * FROM t1;
+DROP TABLE t1;
+
+--echo #
+--echo # End of 10.2 tests
+--echo #