表testtt
CREATE TABLE `testtt` ( `num` varchar(22) NOT NULL, `name` varchar(22) NOT NULL, `age` varchar(22) default NULL, PRIMARY KEY (`num`,`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;执行语句1 通过第一个主键查询
explain select num,name,age from testtt where num= '1'执行语句2 通过第二个主键查询
explain select num,name,age from testtt where name= '1'执行语句3 两个主键查询,第二个主键在前,第一个主键在后面
explain select num,name,age from testtt where name = '1' and num = '1'执行语句4 两个主键查询,第一个主键在前,第二个主键在后面
explain select num,name,age from testtt where num = '1' and name = '1'第二种建表语句: 交换了复合主键的先后位置
CREATE TABLE `testtt` ( `num` varchar(22) NOT NULL, `name` varchar(22) NOT NULL, `age` varchar(22) default NULL, PRIMARY KEY (`name`,`num`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;执行语句1 通过第一个主键查询
explain select num,name,age from testtt where name= '1'执行语句2 通过第二个主键查询
explain select num,name,age from testtt where num= '1'