2011-09-30 20 views
0

我有一个简单的表,有1,000,000行。
这一行有一个日期时间字段,我总是在哪里查询它的声明。Mysql(innodb)索引决定更好的性能

SELECT * from my_table WHERE date_time = 'blabla'; 

难道仅仅因为这个原因才把索引放在它上面吗?

回答

0

是的,在where子句中的字段上放置一个索引。

只要看看EXPLAIN EXTENDED(将它放在查询前)并查看查询实际触及的内容。

另请注意:请勿使用SELECT *,但始终使用您实际使用的字段

1

肯定是的。没有它,MySQL将不得不进行全表扫描(逐行比较date_time与提供的值)。