????????????????Ч???Щ????

????1??like??????

???????????2????????like?????????????ò????????????????????like “%aaa%”?????????????like “aaa%”?????????????

???????磺

mysql> EXPLAIN SELECT * FROM test.`test` WHERE time1 LIKE ‘%550′ LIMIT 0??10;
+—-+————-+——-+——+—————+——+———+——+———+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——+—————+——+———+——+———+————-+
| 1 | SIMPLE | test | ALL | NULL | NULL | NULL | NULL | 3922757 | Using where |
+—-+————-+——-+——+—————+——+———+——+———+————-+
mysql> EXPLAIN SELECT * FROM test.`test` WHERE time1 LIKE ’2013%’ LIMIT 0??10;
+—-+————-+——-+——-+—————+——-+———+——+———+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——-+—————+——-+———+——+———+————-+
| 1 | SIMPLE | test | range | time1 | time1 | 85 | NULL | 3922626 | Using where |
+—-+————-+——-+——-+—————+——-+———+——+———+————-+

????2??????????????ú???????????????н??????????????(+??-??*??/??! ??)?????????Ч

???????磺

mysql> EXPLAIN SELECT * FROM test.test WHERE id-1=153743;
+—-+————-+——-+——+—————+——+———+——+———+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——+—————+——+———+——+———+————-+
| 1 | SIMPLE | test | ALL | NULL | NULL | NULL | NULL | 3922757 | Using where |
+—-+————-+——-+——+—————+——+———+——+———+————-+
mysql> EXPLAIN SELECT * FROM test.test WHERE id=153744;
+—-+————-+——-+——-+—————+———+———+——-+——+——-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——-+—————+———+———+——-+——+——-+
| 1 | SIMPLE | test | const | PRIMARY | PRIMARY | 4 | const | 1 | |
+—-+————-+——-+——-+—————+———+———+——-+——+——-+

????3???????????????????????30????????????????????

???????磺

mysql> select count(*) from test.test4; //???????????
+———-+
| count(*) |
+———-+
| 200000 |
+———-+
mysql> ALTER TABLE `test`.`test4` ADD INDEX `id_num` (`id_num`); //???????
Query OK?? 0 rows affected (0.46 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> explain select * from test.test4 where id_num<60000; //???????????????6?????????
+—-+————-+——-+——+—————+——+———+——+——–+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——+—————+——+———+——+——–+————-+
| 1 | SIMPLE | test4 | ALL | id_num | NULL | NULL | NULL | 200307 | Using where |
+—-+————-+——-+——+—————+——+———+——+——–+————-+
mysql> explain select * from test.test4 where id_num<10000;//?????????1?????????
+—-+————-+——-+——-+—————+——–+———+——+——+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——-+—————+——–+———+——+——+————-+
| 1 | SIMPLE | test4 | range | id_num | id_num | 5 | NULL | 9998 | Using where |
+—-+————-+——-+——-+—————+——–+———+——+——+————-+
1 row in set (0.00 sec)

????4??????????????????where?????????????

???????磺

?????????????????????£?

mysql>desc test;
+——-+————+——+—–+——————-+—————————–+
| Field | Type | Null | Key | Default | Extra |
+——-+————+——+—–+——————-+—————————–+
| id | int(11) | NO | PRI | NULL | auto_increment |
| time1 | char(42) | YES | MUL | NULL | |
| time2 | timestamp | NO | | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP |
| time3 | int(11) | YES | | NULL | |
| stats | tinyint(1) | YES | MUL | NULL | |
+——-+————+——+—–+——————-+—————————–+

??????????????????sql??????м????

mysql> EXPLAIN SELECT SQL_NO_CACHE * FROM test.test WHERE time1 =’20130517160342′;
+—-+————-+——-+——+—————+——-+———+——-+——+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——+—————+——-+———+——-+——+————-+
| 1 | SIMPLE | test | ref | time1 | time1 | 85 | const | 4281 | Using where |
+—-+————-+——-+——+—————+——-+———+——-+——+————-+

???????????????????sql??????м????

mysql> EXPLAIN SELECT SQL_NO_CACHE * FROM test.test WHERE time1 =20130517160342;
+—-+————-+——-+——+—————+——+———+——+———+————-+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+—-+————-+——-+——+—————+——+———+——+———+————-+
| 1 | SIMPLE | test | ALL | time1 | NULL | NULL | NULL | 3922757 | Using where |
+—-+————-+——-+——+—————+——+———+——+———+————-+