私は MU wordpress サイトで作業していますが、クエリに問題があり、実行に時間がかかりすぎます。
SELECT wp_posts.* FROM wp_posts
INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id)
INNER JOIN wp_term_taxonomy ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
INNER JOIN wp_terms ON (wp_term_taxonomy.term_id = wp_terms.term_id)
WHERE 1=1 AND wp_posts.blog_id = '1'
AND wp_term_taxonomy.taxonomy = 'post_tag'
AND wp_terms.slug IN ('rate')
AND wp_posts.post_type = 'post'
AND (wp_posts.post_status = 'publish')
GROUP BY wp_posts.ID
ORDER BY wp_posts.post_date DESC
LIMIT 0, 20
ワードプレスで実行されるこのクエリは、実行に 30 ~ 40 秒かかりすぎます。
- wp_posts : 4,00,000 行
- wp_terms : 2,50,000 行
- wp_term_relationship : 2,30,000 行
- wp_term_taxonomy : 2,60,000 行
私はすでに(使用されている)列にインデックスを付けています。