mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge.
This commit is contained in:
@ -756,7 +756,7 @@ INSERT INTO t1(a, b, c) VALUES (1, 1, 1),
|
||||
(1, 2, 3);
|
||||
EXPLAIN SELECT DISTINCT a, b, d, c FROM t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range NULL a 16 NULL 7 Using index for group-by
|
||||
1 SIMPLE t1 index NULL a 16 NULL 6 Using index
|
||||
SELECT DISTINCT a, b, d, c FROM t1;
|
||||
a b d c
|
||||
1 1 0 1
|
||||
|
@ -236,12 +236,14 @@ SET storage_engine=@old_engine;
|
||||
#
|
||||
CREATE TABLE t1(a BLOB, b VARCHAR(255) CHARSET LATIN1, c INT,
|
||||
KEY(b, c, a(765))) ENGINE=INNODB;
|
||||
INSERT INTO t1(a, b, c) VALUES ('', 'a', 0), ('', 'a', null), ('', 'a', 0);
|
||||
INSERT INTO t1(a, b, c) VALUES
|
||||
('', 'a', 0), ('', 'a', null), ('', 'a', 0), ('', 'a', null), ('', 'a', 0);
|
||||
ANALYZE TABLE t1;
|
||||
SELECT MIN(c) FROM t1 GROUP BY b;
|
||||
MIN(c)
|
||||
0
|
||||
EXPLAIN SELECT MIN(c) FROM t1 GROUP BY b;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range NULL b 263 NULL 4 Using index for group-by
|
||||
1 SIMPLE t1 range NULL b 263 NULL 3 Using index for group-by
|
||||
DROP TABLE t1;
|
||||
End of 5.5 tests
|
||||
|
@ -1524,7 +1524,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
EXPLAIN SELECT a FROM t1 FORCE INDEX FOR JOIN (i2)
|
||||
FORCE INDEX FOR GROUP BY (i2) GROUP BY a;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range NULL i2 4 NULL 145 Using index for group-by
|
||||
1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
|
||||
EXPLAIN SELECT a FROM t1 USE INDEX () IGNORE INDEX (i2);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 144
|
||||
@ -1957,12 +1957,12 @@ UNIQUE INDEX idx (col1));
|
||||
INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),
|
||||
(11),(12),(13),(14),(15),(16),(17),(18),(19),(20);
|
||||
EXPLAIN SELECT col1 AS field1, col1 AS field2
|
||||
FROM t1 GROUP BY field1, field2+0;;
|
||||
FROM t1 GROUP BY field1, field2;;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index NULL idx 5 NULL 20 Using index; Using temporary; Using filesort
|
||||
1 SIMPLE t1 index NULL idx 5 NULL 20 Using index
|
||||
FLUSH STATUS;
|
||||
SELECT col1 AS field1, col1 AS field2
|
||||
FROM t1 GROUP BY field1, field2+0;;
|
||||
FROM t1 GROUP BY field1, field2;;
|
||||
field1 field2
|
||||
1 1
|
||||
2 2
|
||||
@ -1986,7 +1986,7 @@ field1 field2
|
||||
20 20
|
||||
SHOW SESSION STATUS LIKE 'Sort_scan%';
|
||||
Variable_name Value
|
||||
Sort_scan 1
|
||||
Sort_scan 0
|
||||
EXPLAIN SELECT SQL_BIG_RESULT col1 AS field1, col1 AS field2
|
||||
FROM t1 GROUP BY field1, field2;;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
@ -2320,7 +2320,7 @@ a int,
|
||||
b varchar(1),
|
||||
KEY (b,a)
|
||||
);
|
||||
INSERT INTO t1 VALUES (1,NULL),(0,'a');
|
||||
INSERT INTO t1 VALUES (1,NULL),(0,'a'),(1,NULL),(0,'a');
|
||||
|
||||
EXPLAIN SELECT SQL_BUFFER_RESULT MIN(a), b FROM t1 WHERE t1.b = 'a' GROUP BY b;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
|
@ -1,6 +1,6 @@
|
||||
drop table if exists t1;
|
||||
create table t1 (
|
||||
a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(64) default ' '
|
||||
a1 char(64), a2 char(64), b char(16), c char(16) not null, d char(16), dummy char(248) default ' '
|
||||
);
|
||||
insert into t1 (a1, a2, b, c, d) values
|
||||
('a','a','a','a111','xy1'),('a','a','a','b111','xy2'),('a','a','a','c111','xy3'),('a','a','a','d111','xy4'),
|
||||
@ -43,7 +43,7 @@ Table Op Msg_type Msg_text
|
||||
test.t1 analyze status Table is already up to date
|
||||
drop table if exists t2;
|
||||
create table t2 (
|
||||
a1 char(64), a2 char(64) not null, b char(16), c char(16), d char(16), dummy char(64) default ' '
|
||||
a1 char(64), a2 char(64) not null, b char(16), c char(16), d char(16), dummy char(248) default ' '
|
||||
);
|
||||
insert into t2 select * from t1;
|
||||
insert into t2 (a1, a2, b, c, d) values
|
||||
@ -2649,6 +2649,7 @@ DROP TABLE t1;
|
||||
CREATE TABLE t (a INT, b INT, INDEX (a,b));
|
||||
INSERT INTO t VALUES (2,0), (2,0), (2,1), (2,1);
|
||||
INSERT INTO t SELECT * FROM t;
|
||||
INSERT INTO t SELECT * FROM t;
|
||||
# test MIN
|
||||
#should use range with index for group by
|
||||
EXPLAIN
|
||||
@ -3281,6 +3282,7 @@ drop table t1;
|
||||
#
|
||||
CREATE TABLE t1 (a int, b int, KEY (b, a)) ;
|
||||
INSERT INTO t1 VALUES (0,99),(9,99),(4,0),(7,0),(99,0),(7,0),(8,0),(99,0),(1,0);
|
||||
INSERT INTO t1 VALUES (0,99),(9,99),(4,0),(7,0),(99,0),(7,0),(8,0),(99,0),(1,0);
|
||||
CREATE TABLE t2 (c int) ;
|
||||
INSERT INTO t2 VALUES (0),(1);
|
||||
EXPLAIN
|
||||
@ -3303,10 +3305,10 @@ MIN(a) b
|
||||
EXPLAIN
|
||||
SELECT MIN(a), b FROM t1 WHERE a > ( SELECT min(c) FROM t2, t1 t1a, t1 t1b WHERE c = 0 ) GROUP BY b;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 PRIMARY t1 index NULL b 10 NULL 9 Using where; Using index
|
||||
1 PRIMARY t1 index NULL b 10 NULL 18 Using where; Using index
|
||||
2 SUBQUERY t2 ALL NULL NULL NULL NULL 2 Using where
|
||||
2 SUBQUERY t1a index NULL b 10 NULL 9 Using index; Using join buffer (flat, BNL join)
|
||||
2 SUBQUERY t1b index NULL b 10 NULL 9 Using index; Using join buffer (incremental, BNL join)
|
||||
2 SUBQUERY t1a index NULL b 10 NULL 18 Using index; Using join buffer (flat, BNL join)
|
||||
2 SUBQUERY t1b index NULL b 10 NULL 18 Using index; Using join buffer (incremental, BNL join)
|
||||
SELECT MIN(a), b FROM t1 WHERE a > ( SELECT min(c) FROM t2, t1 t1a, t1 t1b WHERE c = 0 ) GROUP BY b;
|
||||
MIN(a) b
|
||||
1 0
|
||||
|
Reference in New Issue
Block a user