SELECT 
  cscart_discussion.object_id AS product_id, 
  AVG(
    cscart_discussion_rating.rating_value
  ) AS average_rating, 
  cscart_discussion.type AS discussion_type, 
  cscart_discussion.thread_id AS discussion_thread_id 
FROM 
  cscart_discussion 
  LEFT JOIN cscart_discussion_posts ON cscart_discussion_posts.thread_id = cscart_discussion.thread_id 
  AND cscart_discussion_posts.status = "A" 
  LEFT JOIN cscart_discussion_rating ON cscart_discussion.thread_id = cscart_discussion_rating.thread_id 
  AND cscart_discussion_rating.post_id = cscart_discussion_posts.post_id 
  AND cscart_discussion_rating.rating_value != 0 
WHERE 
  cscart_discussion.object_id IN (
    85960, 89532, 90235, 90240, 89540, 82492, 
    90225, 90183, 90234, 90239, 87371, 
    90224, 90199, 89546, 89538, 90173, 
    90308, 89554, 90223, 90278, 90286, 
    91481, 90198, 85620, 85634, 91480, 
    89544, 85618, 89542, 85616, 85619, 
    85633, 90222, 82491, 89563, 90221, 
    90197, 85617, 82490, 85615, 90205, 
    90216, 90220, 82489, 90191, 90277, 
    91478, 91885
  ) 
  AND cscart_discussion.object_type = "P" 
GROUP BY 
  cscart_discussion.object_id

Query time 0.00094

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "55.46"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": false,
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_discussion",
            "access_type": "range",
            "possible_keys": [
              "object_id"
            ],
            "key": "object_id",
            "used_key_parts": [
              "object_id",
              "object_type"
            ],
            "key_length": "6",
            "rows_examined_per_scan": 48,
            "rows_produced_per_join": 48,
            "filtered": "100.00",
            "index_condition": "((`nuie_scalesta_net`.`cscart_discussion`.`object_id` in (85960,89532,90235,90240,89540,82492,90225,90183,90234,90239,87371,90224,90199,89546,89538,90173,90308,89554,90223,90278,90286,91481,90198,85620,85634,91480,89544,85618,89542,85616,85619,85633,90222,82491,89563,90221,90197,85617,82490,85615,90205,90216,90220,82489,90191,90277,91478,91885)) and (`nuie_scalesta_net`.`cscart_discussion`.`object_type` = 'P'))",
            "cost_info": {
              "read_cost": "28.81",
              "eval_cost": "4.80",
              "prefix_cost": "33.61",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "thread_id",
              "object_id",
              "object_type",
              "type"
            ]
          }
        },
        {
          "table": {
            "table_name": "cscart_discussion_posts",
            "access_type": "ref",
            "possible_keys": [
              "thread_id",
              "thread_id_2"
            ],
            "key": "thread_id",
            "used_key_parts": [
              "thread_id"
            ],
            "key_length": "3",
            "ref": [
              "nuie_scalesta_net.cscart_discussion.thread_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 48,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "12.00",
              "eval_cost": "4.80",
              "prefix_cost": "50.41",
              "data_read_per_join": "21K"
            },
            "used_columns": [
              "post_id",
              "thread_id",
              "status"
            ],
            "attached_condition": "<if>(is_not_null_compl(cscart_discussion_posts), (`nuie_scalesta_net`.`cscart_discussion_posts`.`status` = 'A'), true)"
          }
        },
        {
          "table": {
            "table_name": "cscart_discussion_rating",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "thread_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 48,
            "filtered": "100.00",
            "using_join_buffer": "hash join",
            "cost_info": {
              "read_cost": "0.25",
              "eval_cost": "4.80",
              "prefix_cost": "55.46",
              "data_read_per_join": "768"
            },
            "used_columns": [
              "rating_value",
              "post_id",
              "thread_id"
            ],
            "attached_condition": "<if>(is_not_null_compl(cscart_discussion_rating), ((`nuie_scalesta_net`.`cscart_discussion_rating`.`post_id` = `nuie_scalesta_net`.`cscart_discussion_posts`.`post_id`) and (`nuie_scalesta_net`.`cscart_discussion_rating`.`thread_id` = `nuie_scalesta_net`.`cscart_discussion`.`thread_id`) and (`nuie_scalesta_net`.`cscart_discussion_rating`.`rating_value` <> 0)), true)"
          }
        }
      ]
    }
  }
}

Result

product_id average_rating discussion_type discussion_thread_id
82489 D 90527
82490 D 90528
82491 D 90529
82492 D 90530
85615 D 93653
85616 D 93654
85617 D 93655
85618 D 93656
85619 D 93657
85620 D 93658
85633 D 93671
85634 D 93672
85960 D 93998
87371 D 95409
89532 D 97570
89538 D 97576
89540 D 97578
89542 D 97580
89544 D 97582
89546 D 97584
89554 D 97592
89563 D 97601
90173 D 98211
90183 D 98221
90191 D 98229
90197 D 98235
90198 D 98236
90199 D 98237
90205 D 98243
90216 D 98254
90220 D 98258
90221 D 98259
90222 D 98260
90223 D 98261
90224 D 98262
90225 D 98263
90234 D 98272
90235 D 98273
90239 D 98277
90240 D 98278
90277 D 98315
90278 D 98316
90286 D 98324
90308 D 98346
91478 D 99551
91480 D 99553
91481 D 99554
91885 D 99963