1
我使用下面的查詢取朋友關係:的Mysql 5.7慢CASE WHEN然後查詢
SELECT F.friend_one, F.friend_two, F.requested_id, F.status
FROM users U, friends F
WHERE
CASE
WHEN F.friend_one = 2
THEN F.friend_two = U.id
WHEN F.friend_two= 2
THEN F.friend_one= U.id
END
AND F.status = 1
(http://www.9lessons.info/2014/03/facebook-style-friend-request-system.html)
但是,選擇從朋友表的結果與7500點的記錄發生1.5秒。有沒有辦法解決這個問題?我不是sql的專家。解釋表明我正在做所有選擇我認爲會造成麻煩的事情。
Thanks @Gordon。還有一個問題。索引關鍵問題中的列順序?或者它只是一種緣故或可讀性。附:所以說我不能太快接受答案!當我允許時,我會接受它:)歡呼! – Inacio
@Inacio。 。 。索引中鍵的順序很重要,這就是爲什麼這個答案建議兩個不同的索引。 –
謝謝!接受的答案:) – Inacio