From 1031b871e7d3e5458d026f1811f671c5fd611212 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 28 Jun 2005 07:27:00 -0700 Subject: range.result, range.test: Added a test case for bug #10031. opt_range.cc: Fixed bug #10031: range condition was not used with views. Range analyzer did not take into account that view columns were always referred through Item_ref. sql/opt_range.cc: Fixed bug #10031: range condition was not used with views. Range analyzer did not take into account that view columns were always referred through Item_ref. mysql-test/t/range.test: Added a test case for bug #10031. mysql-test/r/range.result: Added a test case for bug #10031. --- mysql-test/t/range.test | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'mysql-test/t/range.test') diff --git a/mysql-test/t/range.test b/mysql-test/t/range.test index a285a4b312c..3d2285b1633 100644 --- a/mysql-test/t/range.test +++ b/mysql-test/t/range.test @@ -530,3 +530,26 @@ SELECT * FROM t1 WHERE status NOT BETWEEN 'A' AND 'B'; SELECT * FROM t1 WHERE status < 'A' OR status > 'B'; DROP TABLE t1; + +# +# Test for bug #10031: range to be used over a view +# + +CREATE TABLE t1 (a int, b int, primary key(a,b)); + +INSERT INTO t1 VALUES + (1,1),(1,2),(1,3),(2,1),(2,2),(2,3),(3,1),(3,2),(3,3),(4,1),(4,2),(4,3); + +CREATE VIEW v1 as SELECT a,b FROM t1 WHERE b=3; + +EXPLAIN SELECT a,b FROM t1 WHERE a < 2 and b=3; +EXPLAIN SELECT a,b FROM v1 WHERE a < 2 and b=3; + +EXPLAIN SELECT a,b FROM t1 WHERE a < 2; +EXPLAIN SELECT a,b FROM v1 WHERE a < 2; + +SELECT a,b FROM t1 WHERE a < 2 and b=3; +SELECT a,b FROM v1 WHERE a < 2 and b=3; + +DROP VIEW v1; +DROP TABLE t1; -- cgit v1.2.1