接着昨天的话题,还是在处理数据的时候碰到的。今天要查询一段时间内的数据和,between。。and后发现一直显示正在查询,要知道设置了索引之后几 百万条数据玩起来还是很麻溜儿的,可今天竟然慢的出奇。网上查了之后才发现原来跟sql本身有关,设置的索引进行检索时,sql会判断索引是否高速有效, 判断之后觉得效率太低,它就拒绝执行该索引,所以我们要做的就是要强制sql来执行所创建的索引。
就是use index:USE INDEX
在你查询语句中表名的后面,添加 USE INDEX 来提供你希望 MySQ 去参考的索引列表,就可以让 MySQL 不再考虑其他可用的索引。Eg:SELECT * FROM mytable USE INDEX (mod_time, name) ...