2012-07-20 70 views
0

我不完全理解索引,並想要一些精度。mysql索引爲更好的選擇性能

我有一個表,名爲posts,加班可能會變得非常大。 每篇文章屬於一個類別和一種語言,通過2欄category_id和lang

如果我在列category_id和lang上創建索引,這是否意味着posts表將在mysql中「組織」/「分類」通過category_id和lang的「blocs」,當我在查詢中精確定義category_id和/或lang時,可以更好地選擇數據...?

應該創建哪種類型的索引呢?

我希望我再清楚不過這裏...

回答

1

指數做什麼是創建一個「影子」表,只包含索引值的,所以只要看看通過索引來查找您正在尋找。

如果你正在做一個查詢,有這樣一個地方:

WHERE zipcode = 555 AND phone = 12345678 

你需要將郵政編碼和電話的索引。

如果查詢只:

WHERE zipcode = 555 

你只需要指數郵編。