summaryrefslogtreecommitdiff
path: root/mysql-test/t/view.test
diff options
context:
space:
mode:
authorunknown <igor@rurik.mysql.com>2006-01-06 22:28:26 -0800
committerunknown <igor@rurik.mysql.com>2006-01-06 22:28:26 -0800
commit1901be173f10651b4772f65b16277d1f874a1bd0 (patch)
treeb8a215a1aea131a3018f2793e26e1c95276ef793 /mysql-test/t/view.test
parenta436331ad2ce75f5e9dabb5fd564aece6a6ff140 (diff)
downloadmariadb-git-1901be173f10651b4772f65b16277d1f874a1bd0.tar.gz
Fixed bug #16016: MIN/MAX optimization was not applied to views.
mysql-test/r/view.result: Added a test case for bug #16016. mysql-test/t/view.test: Added a test case for bug #16016. sql/opt_sum.cc: Fixed bug #16016: MIN/MAX optimization was not applied to views. The fix employs the standard way of handling direct references to view fields.
Diffstat (limited to 'mysql-test/t/view.test')
-rw-r--r--mysql-test/t/view.test24
1 files changed, 24 insertions, 0 deletions
diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test
index db6c12fdacb..5f3678215f2 100644
--- a/mysql-test/t/view.test
+++ b/mysql-test/t/view.test
@@ -2339,3 +2339,27 @@ order by v2.receipt_id;
drop view v2, v1;
drop table t1;
+
+#
+# Bug#16016: MIN/MAX optimization for views
+#
+
+CREATE TABLE t1 (a int PRIMARY KEY, b int);
+INSERT INTO t1 VALUES (2,20), (3,10), (1,10), (0,30), (5,10);
+
+CREATE VIEW v1 AS SELECT * FROM t1;
+
+SELECT MAX(a) FROM t1;
+SELECT MAX(a) FROM v1;
+
+EXPLAIN SELECT MAX(a) FROM t1;
+EXPLAIN SELECT MAX(a) FROM v1;
+
+SELECT MIN(a) FROM t1;
+SELECT MIN(a) FROM v1;
+
+EXPLAIN SELECT MIN(a) FROM t1;
+EXPLAIN SELECT MIN(a) FROM v1;
+
+DROP VIEW v1;
+DROP TABLE t1;