mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
203 lines
4.9 KiB
Text
203 lines
4.9 KiB
Text
DROP TABLE IF EXISTS t1, t2;
|
|
CREATE TABLE t1 (
|
|
id INTEGER NOT NULL PRIMARY KEY AUTO_INCREMENT,
|
|
gender CHAR(1),
|
|
name VARCHAR(20)
|
|
);
|
|
SELECT SUM(DISTINCT LENGTH(name)) s1 FROM t1;
|
|
s1
|
|
NULL
|
|
INSERT INTO t1 (gender, name) VALUES (NULL, NULL);
|
|
INSERT INTO t1 (gender, name) VALUES (NULL, NULL);
|
|
INSERT INTO t1 (gender, name) VALUES (NULL, NULL);
|
|
SELECT SUM(DISTINCT LENGTH(name)) s1 FROM t1;
|
|
s1
|
|
NULL
|
|
INSERT INTO t1 (gender, name) VALUES ('F', 'Helen'), ('F', 'Anastasia'),
|
|
('F', 'Katherine'), ('F', 'Margo'), ('F', 'Magdalene'), ('F', 'Mary');
|
|
CREATE TABLE t2 SELECT name FROM t1;
|
|
SELECT (SELECT SUM(DISTINCT LENGTH(name)) FROM t1) FROM t2;
|
|
(SELECT SUM(DISTINCT LENGTH(name)) FROM t1)
|
|
18
|
|
18
|
|
18
|
|
18
|
|
18
|
|
18
|
|
18
|
|
18
|
|
18
|
|
DROP TABLE t2;
|
|
INSERT INTO t1 (gender, name) VALUES ('F', 'Eva'), ('F', 'Sofia'),
|
|
('F', 'Sara'), ('F', 'Golda'), ('F', 'Toba'), ('F', 'Victory'),
|
|
('F', 'Faina'), ('F', 'Miriam'), ('F', 'Beki'), ('F', 'America'),
|
|
('F', 'Susan'), ('F', 'Glory'), ('F', 'Priscilla'), ('F', 'Rosmary'),
|
|
('F', 'Rose'), ('F', 'Margareth'), ('F', 'Elizabeth'), ('F', 'Meredith'),
|
|
('F', 'Julie'), ('F', 'Xenia'), ('F', 'Zena'), ('F', 'Olga'),
|
|
('F', 'Brunhilda'), ('F', 'Nataly'), ('F', 'Lara'), ('F', 'Svetlana'),
|
|
('F', 'Grethem'), ('F', 'Irene');
|
|
SELECT
|
|
SUM(DISTINCT LENGTH(name)) s1,
|
|
SUM(DISTINCT SUBSTRING(NAME, 1, 3)) s2,
|
|
SUM(DISTINCT LENGTH(SUBSTRING(name, 1, 4))) s3
|
|
FROM t1;
|
|
s1 s2 s3
|
|
42 0 7
|
|
SELECT
|
|
SUM(DISTINCT LENGTH(g1.name)) s1,
|
|
SUM(DISTINCT SUBSTRING(g2.name, 1, 3)) s2,
|
|
SUM(DISTINCT LENGTH(SUBSTRING(g3.name, 1, 4))) s3
|
|
FROM t1 g1, t1 g2, t1 g3;
|
|
s1 s2 s3
|
|
42 0 7
|
|
SELECT
|
|
SUM(DISTINCT LENGTH(g1.name)) s1,
|
|
SUM(DISTINCT SUBSTRING(g2.name, 1, 3)) s2,
|
|
SUM(DISTINCT LENGTH(SUBSTRING(g3.name, 1, 4))) s3
|
|
FROM t1 g1, t1 g2, t1 g3 GROUP BY LENGTH(SUBSTRING(g3.name, 5, 10));
|
|
s1 s2 s3
|
|
42 0 NULL
|
|
42 0 7
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
SELECT SQL_BUFFER_RESULT
|
|
SUM(DISTINCT LENGTH(name)) s1,
|
|
SUM(DISTINCT SUBSTRING(NAME, 1, 3)) s2,
|
|
SUM(DISTINCT LENGTH(SUBSTRING(name, 1, 4))) s3
|
|
FROM t1;
|
|
s1 s2 s3
|
|
42 0 7
|
|
SELECT SQL_BUFFER_RESULT
|
|
SUM(DISTINCT LENGTH(g1.name)) s1,
|
|
SUM(DISTINCT SUBSTRING(g2.name, 1, 3)) s2,
|
|
SUM(DISTINCT LENGTH(SUBSTRING(g3.name, 1, 4))) s3
|
|
FROM t1 g1, t1 g2, t1 g3 GROUP BY LENGTH(SUBSTRING(g3.name, 5, 10));
|
|
s1 s2 s3
|
|
42 0 NULL
|
|
42 0 7
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
42 0 4
|
|
SET @l=1;
|
|
UPDATE t1 SET name=CONCAT(name, @l:=@l+1);
|
|
SELECT SUM(DISTINCT RIGHT(name, 1)) FROM t1;
|
|
SUM(DISTINCT RIGHT(name, 1))
|
|
45
|
|
SELECT SUM(DISTINCT id) FROM t1;
|
|
SUM(DISTINCT id)
|
|
703
|
|
SELECT SUM(DISTINCT id % 11) FROM t1;
|
|
SUM(DISTINCT id % 11)
|
|
55
|
|
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;
|
|
/* 8 */
|
|
INSERT INTO t1 (id) SELECT id FROM t2;
|
|
/* 12 */
|
|
INSERT INTO t1 (id) SELECT id FROM t2;
|
|
/* 16 */
|
|
INSERT INTO t1 (id) SELECT id FROM t2;
|
|
/* 20 */
|
|
INSERT INTO t1 (id) SELECT id FROM t2;
|
|
/* 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 t2 SELECT id FROM t1 ORDER BY id*rand();
|
|
SELECT SUM(DISTINCT id) sm FROM t1;
|
|
sm
|
|
134225920
|
|
SELECT SUM(DISTINCT id) sm FROM t2;
|
|
sm
|
|
134225920
|
|
SELECT SUM(DISTINCT id) sm FROM t1 group by id % 13;
|
|
sm
|
|
10327590
|
|
10328851
|
|
10330112
|
|
10331373
|
|
10332634
|
|
10317510
|
|
10318770
|
|
10320030
|
|
10321290
|
|
10322550
|
|
10323810
|
|
10325070
|
|
10326330
|
|
SET max_heap_table_size=16384;
|
|
SHOW variables LIKE 'max_heap_table_size';
|
|
Variable_name Value
|
|
max_heap_table_size 16384
|
|
SELECT SUM(DISTINCT id) sm FROM t1;
|
|
sm
|
|
134225920
|
|
SELECT SUM(DISTINCT id) sm FROM t2;
|
|
sm
|
|
134225920
|
|
SELECT SUM(DISTINCT id) sm FROM t1 GROUP BY id % 13;
|
|
sm
|
|
10327590
|
|
10328851
|
|
10330112
|
|
10331373
|
|
10332634
|
|
10317510
|
|
10318770
|
|
10320030
|
|
10321290
|
|
10322550
|
|
10323810
|
|
10325070
|
|
10326330
|
|
DROP TABLE t1;
|
|
DROP TABLE t2;
|