我有一个表像这样是distinct(count(ColumnName))上索引on where子句所需的索引?
Subscribers
Id (PK, int)
OwnedBy (FK, int)
EmailAddress (varchar 50)
如果我这样的查询:
SELECT COUNT(DISTINCT(EmailAddress))
FROM Subscribers
WHERE Subscribers.OwnedBy = 67;
上有OwnedBy
列的索引。假设表格非常大,我是否应该索引EmailAddress
?我不关心写入性能下降。
谢谢。你能否评论你的解决方案与Omesh提到的创建覆盖索引? – Harper 2012-07-20 08:19:18
也许这会帮助你http://stackoverflow.com/questions/8213235/mysql-covering-vs-composite-vs-column-index – Horen 2012-07-20 08:27:31