I'm trying to fetch 100 posts and order them by the number of times they've been "remixed" in the last week. Here is my query thus far:
SELECT COUNT(remixes.post_id) AS count, posts.title
FROM posts
LEFT JOIN (
SELECT * FROM remixes WHERE created_at >= 1343053513
) AS remixes ON posts.id = remixes.post_id
GROUP BY posts.id
ORDER BY count DESC, posts.created_at DESC
LIMIT 100
This produces the correct result; however, after running DESCRIBE I get this:

And here are my indexes on posts:

And my indexes on remixes:

And here are my questions:
- Can you explain what the terms used in the extra column are really trying to tell me?
- Could you provide tips on how I can optimize this query so that it'll scale better.
Thanks in advance!
Update
Per Zane's solution, I've updated my query to:
SELECT COUNT(remixes.post_id) AS count, posts.title
FROM posts
LEFT JOIN remixes ON posts.id = remixes.post_id AND remixes.created_at >= 1343053513
GROUP BY posts.id
ORDER BY count DESC, posts.created_at DESC
LIMIT 100
And here's the latest DESCRIBE

I'm still worried about the filesort part. Any ideas?
poststable instead of having to count and sort them every time the query runs.remixes_past_weekcolumn that updates, say, hourly. E.g. the job runs Aug 10th 12:00, you look at all the remixes made on Aug 3rd between 11:00 and 12:00, substract them from the tallies for the respective posts, then look at remixes made Aug 10th between 11:00 and 12:00, and add them to the respective tallies.