- 论坛徽章:
- 0
|
本帖最后由 robert_wjj 于 2014-09-01 15:52 编辑
chengchow 发表于 2014-09-01 15:13 ![]()
回复 12# robert_wjj
我没这么大的测试文件,你可以把*改成字段名称看下
select id,column2...columnN f ...
不需要大测试文件,用explain就可以看到有没有用索引:
mysql> explain select * from data_ordq where id > 42838851\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: data_ordq
type: ALL
possible_keys: PRIMARY
key: NULL
key_len: NULL
ref: NULL
rows: 42838856
Extra: Using where
1 row in set (0.00 sec)
key 是NULL,说明没用索引。
mysql> explain select * from data_ordq where id in (42838852, 42838853, 42838854, 42838855, 42838856)\G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: data_ordq
type: range
possible_keys: PRIMARY
key: PRIMARY
key_len: 8
ref: NULL
rows: 5
Extra: Using where
1 row in set (0.00 sec)
这个in语句的key是PRIMARY用到了索引,实际执行速度也快了很多
|
|