drop table if exists t1; CREATE TABLE t1 ( PORT varchar(16) NOT NULL, ACCESSNODE varchar(16) NOT NULL, POP varchar(48) NOT NULL, ACCESSTYPE int unsigned NOT NULL, CUSTOMER_ID varchar(20) collate latin1_bin NOT NULL, PROVIDER varchar(16), TEXPIRE int unsigned, NUM_IP int unsigned, LEASED_NUM_IP int unsigned, LOCKED_IP int unsigned, STATIC_DNS int unsigned, SUSPENDED_SERVICE int unsigned, SUSPENDED_REASON int unsigned, BGP_COMMUNITY int unsigned, INDEX CUSTOMER_ID_INDEX(CUSTOMER_ID), INDEX FQPN_INDEX(POP,ACCESSNODE,PORT), PRIMARY KEY(POP,ACCESSNODE,PORT,ACCESSTYPE) ) engine=ndbcluster; INSERT INTO t1 VALUES ('port67', 'node78', 'pop98', 1, 'kllopmn', 'pr_43', 121212, 1, 2, 3, 8, NULL, NULL, NULL); INSERT INTO t1 VALUES ('port67', 'node78', 'pop99', 2, 'klkighh', 'pr_44', 121213, 3, 3, 6, 7, NULL, NULL, NULL); INSERT INTO t1 VALUES ('port79', 'node79', 'pop79', 2, 'kpongfaa', 'pr_44', 981213, 2, 4, 10, 11, 2, 99, 1278); select port, accessnode, pop, accesstype from t1 where port='port67' order by accesstype; port accessnode pop accesstype port67 node78 pop98 1 port67 node78 pop99 2 select port, accessnode, pop, accesstype from t1 where port='foo'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where accessnode='node78' order by accesstype; port accessnode pop accesstype port67 node78 pop98 1 port67 node78 pop99 2 select port, accessnode, pop, accesstype from t1 where accessnode='foo'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where pop='pop98'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98' order by accesstype; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='foo'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where accesstype=1; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where accesstype=2 order by port; port accessnode pop accesstype port67 node78 pop99 2 port79 node79 pop79 2 select port, accessnode, pop, accesstype from t1 where accesstype=98 order by port; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where customer_id='KLLOPMN'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where customer_id='kLLoPMn'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where customer_id='foo'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where provider='pr_43'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where provider='foo'; port accessnode pop accesstype select port, accessnode from t1 where texpire=121212; port accessnode port67 node78 select port, accessnode from t1 where texpire=2323; port accessnode select port, accessnode, pop, accesstype from t1 where num_ip=1; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where num_ip=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where leased_num_ip=2; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where leased_num_ip=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where locked_ip=3; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where locked_ip=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where static_dns=8; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where static_dns=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where suspended_service=8; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where suspended_service=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where suspended_reason=NULL; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where suspended_reason=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where suspended_reason=0; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where bgp_community=NULL; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where bgp_community=89; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where bgp_community=0; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where port='port67' and accessnode='node78' and pop='pop98' and accesstype=1; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78' and pop='pop98'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98' and port='port67' and accesstype=1 and accessnode='node78'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo' and accesstype=99; port accessnode select port, accessnode, pop, accesstype from t1 where port='port67' and pop='pop98' and accesstype=1; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where accesstype=1 and accessnode='node78' and pop='pop98'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo'; port accessnode select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=1; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=2; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where accesstype=2 and customer_id='kllopmn'; port accessnode pop accesstype select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='kllopmn'; port accessnode pop accesstype port67 node78 pop98 1 select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='foo'; port accessnode pop accesstype drop table t1; create table t1 ( a int not null primary key, c00 int not null, c01 int not null, c02 int not null, c03 int not null, c04 int not null, c05 int not null, c06 int not null, c07 int not null, c10 int not null, c11 int not null, c12 int not null, c13 int not null, c14 int not null, c15 int not null, c16 int not null, c17 int not null, c20 int not null, c21 int not null, c22 int not null, c23 int not null, c24 int not null, c25 int not null, c26 int not null, c27 int not null, c30 int not null, c31 int not null, c32 int not null, c33 int not null, c34 int not null, c35 int not null, c36 int not null, c37 int not null, c40 int not null, c41 int not null, c42 int not null, c43 int not null, c44 int not null, c45 int not null, c46 int not null, c47 int not null, c50 int not null, c51 int not null, c52 int not null, c53 int not null, c54 int not null, c55 int not null, c56 int not null, c57 int not null, c60 int not null, c61 int not null, c62 int not null, c63 int not null, c64 int not null, c65 int not null, c66 int not null, c67 int not null, c70 int not null, c71 int not null, c72 int not null, c73 int not null, c74 int not null, c75 int not null, c76 int not null, c77 int not null, unique (c00), unique (c01), unique (c02), unique (c03), unique (c04), unique (c05), unique (c06), unique (c07), unique (c10), unique (c11), unique (c12), unique (c13), unique (c14), unique (c15), unique (c16), unique (c17), unique (c20), unique (c21), unique (c22), unique (c23), unique (c24), unique (c25), unique (c26), unique (c27), unique (c30), unique (c31), unique (c32), unique (c33), unique (c34), unique (c35), unique (c36), unique (c37), unique (c40), unique (c41), unique (c42), unique (c43), unique (c44), unique (c45), unique (c46), unique (c47), unique (c50), unique (c51), unique (c52), unique (c53), unique (c54), unique (c55), unique (c56), unique (c57), unique (c60), unique (c61), unique (c62), unique (c63), unique (c64), unique (c65), unique (c66), unique (c67), unique (c60), unique (c71), unique (c72), unique (c73), unique (c74), unique (c75), unique (c76)) engine = ndb; drop table t1; CREATE TABLE t1 ( a INT NOT NULL AUTO_INCREMENT , b INT NOT NULL , c VARCHAR ( 11 ) NOT NULL , PRIMARY KEY ( a ) , INDEX ( b ) ) ENGINE = NDB; INSERT INTO t1 (a ,b ,c) VALUES (NULL , '1', 'test'), (NULL , '2', 'test'), (NULL , '1', 'test'), (NULL , '2', 'test'), (NULL , '3', 'test'), (NULL , '4', 'test'), (NULL , '5', 'test'), (NULL , '6', 'test'), (NULL , '1', 'test'), (NULL , '1', 'test'); explain select count(a) from t1 group by a; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL PRIMARY 4 NULL 10 explain select count(a) from t1 FORCE INDEX FOR GROUP BY (PRIMARY) group by a; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL PRIMARY 4 NULL 10 explain select count(b) from t1 group by b; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL b 4 NULL 10 explain select count(b) from t1 FORCE INDEX FOR GROUP BY (b) group by b; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL b 4 NULL 10 explain select distinct a from t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 10 explain select distinct a from t1 group by a; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 ALL NULL NULL NULL NULL 10 Using filesort explain select distinct b from t1; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL b 4 NULL 10 explain select distinct b from t1 group by b; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index NULL b 4 NULL 10 select count(a) from t1 group by a; count(a) 1 1 1 1 1 1 1 1 1 1 select count(a) from t1 FORCE INDEX FOR GROUP BY (PRIMARY) group by a; count(a) 1 1 1 1 1 1 1 1 1 1 select count(b) from t1 group by b; count(b) 1 1 1 1 2 4 select count(b) from t1 FORCE INDEX FOR GROUP BY (b) group by b; count(b) 1 1 1 1 2 4 select distinct a from t1; a 1 10 2 3 4 5 6 7 8 9 select distinct a from t1 group by a; a 1 10 2 3 4 5 6 7 8 9 select distinct b from t1; b 1 2 3 4 5 6 select distinct b from t1 group by b; b 1 2 3 4 5 6 drop table t1; create table t1(vc varchar(16), i int, vc2 varchar(1024) , PRIMARY KEY(vc,vc2) USING HASH , KEY i1(i) , KEY i2(vc) ) ENGINE=ndbcluster; insert into t1 values ('1',1,'1'), ('2',2,'2'), ('3',3,'3'), ('4',1,'4'), ('5',2,'5'), ('6',3,'6'), ('7',1,'7'), ('8',2,'8'), ('9',3,'9'), ('10',1,'10'), ('11',2,'11'), ('12',3,'12'), ('13',1,'13'), ('14',2,'14'), ('15',3,'15'), ('16',1,'16'), ('17',2,'17'), ('x',3,'x'), ('y',1,'y'), ('z',2,'z'), ('1000',3,'1000'), ('2000',3,'2000'), ('10000',3,'10000'); analyze table t1; Table Op Msg_type Msg_text test.t1 analyze status OK explain select i,vc from t1 where i>=1 or vc > '0'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t1 index_merge PRIMARY,i1,i2 i1,i2 5,18 NULL 6 Using sort_union(i1,i2); Using where with pushed condition select i,vc from t1 where i>=1 or vc > '0'; i vc 1 1 1 10 1 13 1 16 1 4 1 7 1 y 2 11 2 14 2 17 2 2 2 5 2 8 2 z 3 1000 3 10000 3 12 3 15 3 2000 3 3 3 6 3 9 3 x create table t2(vc varchar(16), i int, vc2 varchar(1024) , KEY i1(i) , KEY i2(vc) ) ENGINE=ndbcluster; insert into t2 values ('1',1,'1'), ('2',2,'2'), ('3',3,'3'), ('4',1,'4'), ('5',2,'5'), ('6',3,'6'), ('7',1,'7'), ('8',2,'8'), ('9',3,'9'), ('10',1,'10'), ('11',2,'11'), ('12',3,'12'), ('13',1,'13'), ('14',2,'14'), ('15',3,'15'), ('16',1,'16'), ('17',2,'17'), ('x',3,'x'), ('y',1,'y'), ('z',2,'z'), ('1000',3,'1000'), ('2000',3,'2000'), ('10000',3,'10000'); analyze table t2; Table Op Msg_type Msg_text test.t2 analyze status OK explain select i,vc from t2 where i>=1 or vc > '0'; id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE t2 index_merge i1,i2 i1,i2 5,19 NULL 6 Using sort_union(i1,i2); Using where with pushed condition select i,vc from t2 where i>=1 or vc > '0'; i vc 1 1 1 10 1 13 1 16 1 4 1 7 1 y 2 11 2 14 2 17 2 2 2 5 2 8 2 z 3 1000 3 10000 3 12 3 15 3 2000 3 3 3 6 3 9 3 x drop table t1, t2; CREATE TABLE inleveroverzicht ( id int(11) NOT NULL auto_increment, klantid int(11) NOT NULL default '0', productcode varchar(255) NOT NULL default '0', aantal int(11) NOT NULL default '0', PRIMARY KEY (id), KEY klantid (klantid), KEY `klantid/productcode` (klantid,productcode) ) ENGINE=NDBCLUSTER DEFAULT CHARSET=latin1 AUTO_INCREMENT=34 ; INSERT INTO inleveroverzicht (id, klantid, productcode, aantal) VALUES (33, 31, '15674', 11), (32, 31, '0001256', 1); SELECT * from inleveroverzicht ORDER BY id; id klantid productcode aantal 32 31 0001256 1 33 31 15674 11 TRUNCATE TABLE inleveroverzicht; SELECT * from inleveroverzicht ORDER BY id; id klantid productcode aantal DROP TABLE inleveroverzicht;