mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
WL#926 "AVG(DISTINCT) and other distincts", part 2 (out of 3): clean up
Item_sum_count_distinct, and deploy Unique for use with COUNT(DISTINCT) if there is no blob column in the list of DISTINCT arguments.
This commit is contained in:
@ -98,60 +98,60 @@ DROP TABLE t1;
|
||||
CREATE TABLE t1 (id INTEGER);
|
||||
CREATE TABLE t2 (id INTEGER);
|
||||
INSERT INTO t1 (id) VALUES (1), (1), (1),(1);
|
||||
INSERT INTO t2 (id) SELECT id FROM t1;
|
||||
INSERT INTO t1 (id) SELECT id FROM t2;
|
||||
INSERT INTO t1 (id) SELECT id FROM t1;
|
||||
/* 8 */
|
||||
INSERT INTO t1 (id) SELECT id FROM t2;
|
||||
INSERT INTO t1 (id) SELECT id FROM t1;
|
||||
/* 12 */
|
||||
INSERT INTO t1 (id) SELECT id FROM t2;
|
||||
INSERT INTO t1 (id) SELECT id FROM t1;
|
||||
/* 16 */
|
||||
INSERT INTO t1 (id) SELECT id FROM t2;
|
||||
INSERT INTO t1 (id) SELECT id FROM t1;
|
||||
/* 20 */
|
||||
INSERT INTO t1 (id) SELECT id FROM t2;
|
||||
INSERT INTO t1 (id) SELECT id FROM t1;
|
||||
/* 24 */
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+1 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+2 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+4 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+8 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+16 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+32 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+64 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+128 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+256 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+512 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+1024 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+2048 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+4096 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t2 (id) SELECT id+8192 FROM t1;
|
||||
INSERT INTO t1 SELECT id FROM t2;
|
||||
DELETE FROM t2;
|
||||
INSERT INTO t1 SELECT id+1 FROM t1;
|
||||
INSERT INTO t1 SELECT id+2 FROM t1;
|
||||
INSERT INTO t1 SELECT id+4 FROM t1;
|
||||
INSERT INTO t1 SELECT id+8 FROM t1;
|
||||
INSERT INTO t1 SELECT id+16 FROM t1;
|
||||
INSERT INTO t1 SELECT id+32 FROM t1;
|
||||
INSERT INTO t1 SELECT id+64 FROM t1;
|
||||
INSERT INTO t1 SELECT id+128 FROM t1;
|
||||
INSERT INTO t1 SELECT id+256 FROM t1;
|
||||
INSERT INTO t1 SELECT id+512 FROM t1;
|
||||
SELECT AVG(DISTINCT id) FROM t1 GROUP BY id % 13;
|
||||
AVG(DISTINCT id)
|
||||
513.5000
|
||||
508.0000
|
||||
509.0000
|
||||
510.0000
|
||||
511.0000
|
||||
512.0000
|
||||
513.0000
|
||||
514.0000
|
||||
515.0000
|
||||
516.0000
|
||||
517.0000
|
||||
511.5000
|
||||
512.5000
|
||||
SELECT SUM(DISTINCT id)/COUNT(DISTINCT id) FROM t1 GROUP BY id % 13;
|
||||
SUM(DISTINCT id)/COUNT(DISTINCT id)
|
||||
513.50000
|
||||
508.00000
|
||||
509.00000
|
||||
510.00000
|
||||
511.00000
|
||||
512.00000
|
||||
513.00000
|
||||
514.00000
|
||||
515.00000
|
||||
516.00000
|
||||
517.00000
|
||||
511.50000
|
||||
512.50000
|
||||
INSERT INTO t1 SELECT id+1024 FROM t1;
|
||||
INSERT INTO t1 SELECT id+2048 FROM t1;
|
||||
INSERT INTO t1 SELECT id+4096 FROM t1;
|
||||
INSERT INTO t1 SELECT id+8192 FROM t1;
|
||||
INSERT INTO t2 SELECT id FROM t1 ORDER BY id*rand();
|
||||
SELECT SUM(DISTINCT id) sm FROM t1;
|
||||
sm
|
||||
|
Reference in New Issue
Block a user