1

約 9 秒かかるクエリがあります。それは私のウェブサイトを非常に遅くします。パフォーマンスを向上させるために最適化する方法について、誰かが私を正しい方向に向けることができますか? 構文を判断しないでください。かなり醜いです:$

SELECT songs.id, count(votes.song_id) AS votes
    FROM songs, songs_genre, votes 
    WHERE votes.song_id=songs.id 
        AND songs_genre.genre_id IN ('$genre_ids') 
        AND songs.id=songs_genre.song_id 
        AND votes.date<=DATE_ADD(CURDATE(), INTERVAL + 1 DAY) 
        AND votes.date>=DATE_ADD(CURDATE(), INTERVAL - 3 MONTH) 
    GROUP BY votes.song_id
    ORDER BY votes DESC limit 36
4

1 に答える 1

0

クエリは良さそうです。パフォーマンスを直接改善する唯一の方法は、投票または曲の ID に適切なインデックスを付けることです。

于 2013-07-31T00:17:13.490 に答える