MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
index_merge_multi_col_setup.inc
1 #
2 # Creating table with multi column index setup
3 #
4 
5 --disable_warnings
6 DROP TABLE IF EXISTS t1;
7 --enable_warnings
8 
9 CREATE TABLE t1
10 (
11  key1 INT NOT NULL,
12  key2 INT NOT NULL,
13  key3 INT NOT NULL,
14  key4 INT NOT NULL,
15  key5 INT,
16  key6 INT,
17  key7 INT NOT NULL,
18  key8 INT NOT NULL,
19  INDEX i1(key1,key2),
20  INDEX i2(key2,key1),
21  INDEX i3(key3,key4),
22  INDEX i4(key4,key3),
23  INDEX i5(key5,key6),
24  INDEX i6(key6,key5),
25  INDEX i7(key7,key8),
26  INDEX i8(key8,key7)
27 );
28 
29 --disable_query_log
30 
31 
32 # inserting values
33 
34 INSERT INTO t1 VALUES ( 1,1,1,1,1,1,1,1),(2,2,2,2,2,2,2,2);
35 
36 let $i=10;
37 set @d=2;
38 while($i)
39 {
40  INSERT INTO t1 SELECT key1+@d, key2+@d, key3+@d, key4+@d,
41  key5+@d, key6+@d, key7+@d, key8+@d FROM t1;
42  set @d=@d*2;
43  dec $i;
44 }
45 
46 
47 # Inserting null values.
48 
49 let $i=5;
50 set @d=5;
51 while($i)
52 {
53  INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
54  key5+@d, NULL, key7+@d, key8+@d);
55  set @d=@d*2;
56  dec $i;
57 }
58 
59 let $i=4;
60 set @d=6;
61 while($i)
62 {
63  INSERT INTO t1 VALUES (key1+@d, key2+@d, key3+@d, key4+@d,
64  NULL, key6+@d, key7+@d, key8+@d);
65  set @d=@d*2;
66  dec $i;
67 }
68 
69 --enable_query_log
70 
71 # To analyze and store the key distribution of the table.
72 
73 ANALYZE TABLE t1;
74 
75