CREATE TABLE ' uniontest ' ( ' id ' int (one) not null auto_increment, ' menuname ' varchar () DEFAULT NULL, ' url ' V Archar (+) DEFAULT NULL, PRIMARY key (' id '), UNIQUE key ' U_index ' (' menuname ', ' url ')) Engine=innodb auto_ Increment=5 DEFAULT Charset=utf8
Set up the database first, setting the Menuname and URL as the federated index
A few things to note:
1. When inserting data, MySQL has checked the uniqueness of menuname and URL two columns at the same time.
Such as:
INSERT into Uniontest (' menuname ', ' url ') VALUES (' Order Management ', ' aaa.php ') success
INSERT into Uniontest (' menuname ', ' url ') VALUES (' Order Management ', ' bbb.php ') success
INSERT into Uniontest (' menuname ', ' url ') VALUES (' Order Management 2 ', ' aaa.php ') success
INSERT into Uniontest (' menuname ', ' url ') VALUES (' Order Management ', ' aaa.php ') failed
2, at the time of inquiry
Explain SELECT * from uniontest where menuname = ' order management ' used to index
Explain SELECT * from uniontest WHERE menuname = ' order management ' and URL = ' aaa.php '; Use to Index
Explain SELECT * from uniontest WHERE url = ' aaa.php '; The index is not used
Followed the principle of the leftmost priority of the Federated index.
About MySQL Federated index