SELECT 
  tmall_discussion_posts.*, 
  tmall_discussion_messages.message, 
  tmall_discussion_rating.rating_value 
FROM 
  tmall_discussion_posts 
  LEFT JOIN tmall_discussion_messages ON tmall_discussion_messages.post_id = tmall_discussion_posts.post_id 
  LEFT JOIN tmall_discussion_rating ON tmall_discussion_rating.post_id = tmall_discussion_posts.post_id 
WHERE 
  tmall_discussion_posts.thread_id = 265 
  AND tmall_discussion_posts.status = 'A' 
ORDER BY 
  tmall_discussion_posts.timestamp DESC 
LIMIT 
  0, 10

Query time 0.00777

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost": 0.015275905,
    "nested_loop": [
      {
        "read_sorted_file": {
          "filesort": {
            "sort_key": "tmall_discussion_posts.`timestamp` desc",
            "table": {
              "table_name": "tmall_discussion_posts",
              "access_type": "ref",
              "possible_keys": ["thread_id", "thread_id_2"],
              "key": "thread_id",
              "key_length": "3",
              "used_key_parts": ["thread_id"],
              "ref": ["const"],
              "loops": 1,
              "rows": 3,
              "cost": 0.004492149,
              "filtered": 100,
              "attached_condition": "tmall_discussion_posts.thread_id <=> 265 and tmall_discussion_posts.`status` = 'A'"
            }
          }
        }
      },
      {
        "table": {
          "table_name": "tmall_discussion_messages",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["post_id"],
          "ref": ["tmall.tmall_discussion_posts.post_id"],
          "loops": 3,
          "rows": 1,
          "cost": 0.005391878,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "tmall_discussion_rating",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["post_id"],
          "ref": ["tmall.tmall_discussion_posts.post_id"],
          "loops": 3,
          "rows": 1,
          "cost": 0.005391878,
          "filtered": 100
        }
      }
    ]
  }
}

Result

post_id thread_id name timestamp user_id ip_address status message rating_value
62 265 Joe 1484307000 0 5f68c2c5 A I don’t really need an overly functional super-duper music player that can brew me a coffee, I needed a replacement for my broken iPod. And this player handled that job really well. One extra pro is the fact that you don’t have to use pesky iTunes every time you connect the player. 5
63 265 Nancy 1484307000 0 5f68c2c5 A A big screen is good and all, and I love to watch movies on it, but where are the buttons? 3
61 265 Sam 1484306940 0 5f68c2c5 A This thing is the stuff of legends. If you are an audiophile like me, take it without question. You can listen to lossless music AND browse the web at the same time on the same device, fantastic! 5