如果我在一個有100行的表上使用SELECT DISTINCT查詢,其中98個表的條目是相同的,而另外兩個是相同的,那麼它是否仍然會經過所有100行才返回2不同的結果?使用鍵加速SELECT DISTINCT
有沒有辦法使用索引/鍵等,而不是通過所有100行,而是通過2行?
#### EDIT #####
,所以我說這個指數:
KEY `column` (`column`(1)),
但後來當我做
EXPLAIN SELECT DISTINCT column FROM tablename
它仍然說這是經歷所有行而不是僅僅是不同的行
我會更傾向於使用約束來避免所有重複插入 – Phil
爲什麼創建索引時的'(1)'長度?如果您希望僅使用索引解析查詢,則索引需要位於整列上,而不僅僅是第一個字節/字符。 –
我將其更改爲20(列中的任何條目都不超過該條目),並且它仍然遍歷所有條目 –