2012-04-26 41 views
-1

我有一張包含100,00,000或更多記錄的消息表,我可以如何運行查詢並獲取快速數據。簡單的查詢是select title,message from messages請告訴我正確的查詢來快速檢索數據。我如何在MySQL中獲得快速數據?

回答

4

一些列過濾您的結果,並把指數上過濾塔,例如

SELECT title,message from messages 
WHERE `date` > somedate 

和根據指數

CREATE INDEX dateIndex ON messages (`date`); 

我不認爲你想獲得的所有10^7排,你呢?

2

在列titlemessage上添加索引。

CREATE INDEX title_message_index ON messages (title, message); 
+0

我已經使用過索引,我想更快速。 – Asif 2012-04-26 09:44:08

+0

在所選值上創建索引不會以任何方式提高性能。 – Sirko 2012-04-26 09:45:12

4

在這樣一個寬泛的問題,答案就不可能真正具體 - 所以繼承人的廣泛答案:

set proper indexing colums(您例如titlemessage)和您的查詢,看是否使用EXPLAIN這些索引被使用。

1

使用INDEX將極大地幫助優化sql操作。檢查this

相關問題