1. 程式人生 > >mysql中能夠使用索引的典型場景

mysql中能夠使用索引的典型場景

from select bsp 字段 -1 mysq and cnblogs 前綴

mysql 演示數據庫:http://downloads.mysql.com/docs/sakila-db.zip

匹配全值


explain select * from rental where rental_date=‘2005-05-25 17:22:10‘ and inventory_id=373 and customer_id=343

技術分享

匹配值的範圍查詢


explain select * from rental where customer_id >= 373 and customer_id<400

技術分享

匹配最左前綴


僅僅使用索引中的最左列進行查詢,比如:在col1+col2+col3字段上的聯合索引中,能夠使用的索引情況可以有:col1 (col2+col3) ,col1+col2+col3。不能被使用的索引:col2 (col2+col3) 等情況。以payment表為例

alter table payment add index idx_payment_date (payment_date,amount,last_update);

技術分享

explain select * from payment where payment_date=‘2006-02-14 15:16:03‘ and last_update=‘2006-02-15 22:12:32‘\G;

技術分享

explain select * from payment where amount=3.98 and last_update=‘2006-02-15 22:12:32‘\G;

技術分享

僅僅對索引進行查詢


mysql中能夠使用索引的典型場景