1
我有這個查詢來獲取用戶的聯繫人列表。MySQL查詢需要一段時間,如果可能需要優化
SELECT contacts.contactID as id, contacts.conversationID, users.username,
profile_picture, picture_path, full_name, sex, availabilityStatus
FROM contacts
JOIN users ON contacts.contactID = users.id
WHERE contacts.ownerID = ?;
關於如何優化此查詢的任何想法?
users
表約有1M行。 contacts
有大約10M行。
有用戶ID,使用ContactID指標,OWNERID
在誰的人有例如200個聯繫人,查詢需要幾秒鐘。
感謝
上contacts.contactID,users.id和contacts.ownerID列
你有什麼試過?我們需要更多的信息來確定答案。聯繫人或用戶是否更小? contactID和id是否被索引? – 2014-11-21 20:00:00
標準經驗法則:在決策環境中使用的任何字段(例如where,order by,join,case等)應該有一個索引。 – 2014-11-21 20:00:07
由於代碼目前正在工作,這不屬於代碼審查嗎? – user2366842 2014-11-21 20:00:22