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 (
    99277, 99278, 99279, 99280, 99281, 99324, 
    99325, 99326, 99327, 99328, 99329, 
    99344, 99345, 99422, 99423, 99424, 
    99425, 99426, 99427, 99428, 99429, 
    99430, 99431, 99432, 99433, 99434, 
    99435, 99436, 99437, 99529, 99530, 
    99531, 99532, 99533, 99534, 99535, 
    99536, 99537, 99538, 99539, 99540, 
    99541, 99542, 99543, 99544, 99545, 
    99546, 99547, 99548, 99549, 99550, 
    99551, 99552, 99553, 99554, 99555, 
    99556, 99557, 99574, 99575, 99576, 
    100143, 100161, 100162, 100163, 100164, 
    100165, 100166, 100167, 100168, 100388, 
    100389, 100390, 100391, 100431, 100432, 
    100435, 100436, 100665, 100666, 100667, 
    100668, 100669, 100670, 100671, 100672, 
    100673, 100674, 100675, 100676, 101011, 
    101012, 101013, 101014, 101015, 101016
  ) 
  AND cscart_discussion.object_type = "P" 
GROUP BY 
  cscart_discussion.object_id

Query time 0.00138

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "110.66"
    },
    "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": 96,
            "rows_produced_per_join": 96,
            "filtered": "100.00",
            "index_condition": "((`nuie_scalesta_net`.`cscart_discussion`.`object_id` in (99277,99278,99279,99280,99281,99324,99325,99326,99327,99328,99329,99344,99345,99422,99423,99424,99425,99426,99427,99428,99429,99430,99431,99432,99433,99434,99435,99436,99437,99529,99530,99531,99532,99533,99534,99535,99536,99537,99538,99539,99540,99541,99542,99543,99544,99545,99546,99547,99548,99549,99550,99551,99552,99553,99554,99555,99556,99557,99574,99575,99576,100143,100161,100162,100163,100164,100165,100166,100167,100168,100388,100389,100390,100391,100431,100432,100435,100436,100665,100666,100667,100668,100669,100670,100671,100672,100673,100674,100675,100676,101011,101012,101013,101014,101015,101016)) and (`nuie_scalesta_net`.`cscart_discussion`.`object_type` = 'P'))",
            "cost_info": {
              "read_cost": "57.61",
              "eval_cost": "9.60",
              "prefix_cost": "67.21",
              "data_read_per_join": "2K"
            },
            "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": 96,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "24.00",
              "eval_cost": "9.60",
              "prefix_cost": "100.81",
              "data_read_per_join": "42K"
            },
            "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": 96,
            "filtered": "100.00",
            "using_join_buffer": "hash join",
            "cost_info": {
              "read_cost": "0.25",
              "eval_cost": "9.60",
              "prefix_cost": "110.66",
              "data_read_per_join": "1K"
            },
            "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
99277 B 107458
99278 B 107459
99279 B 107460
99280 B 107461
99281 B 107462
99324 B 107505
99325 B 107506
99326 B 107507
99327 B 107508
99328 B 107509
99329 B 107510
99344 B 107525
99345 B 107526
99422 B 107603
99423 B 107604
99424 B 107605
99425 B 107606
99426 B 107607
99427 B 107608
99428 B 107609
99429 B 107610
99430 B 107611
99431 B 107612
99432 B 107613
99433 B 107614
99434 B 107615
99435 B 107616
99436 B 107617
99437 B 107618
99529 B 107710
99530 B 107711
99531 B 107712
99532 B 107713
99533 B 107714
99534 B 107715
99535 B 107716
99536 B 107717
99537 B 107718
99538 B 107719
99539 B 107720
99540 B 107721
99541 B 107722
99542 B 107723
99543 B 107724
99544 B 107725
99545 B 107726
99546 B 107727
99547 B 107728
99548 B 107729
99549 B 107730
99550 B 107731
99551 B 107732
99552 B 107733
99553 B 107734
99554 B 107735
99555 B 107736
99556 B 107737
99557 B 107738
99574 B 107755
99575 B 107756
99576 B 107757
100143 B 108323
100161 B 108341
100162 B 108342
100163 B 108343
100164 B 108344
100165 B 108345
100166 B 108346
100167 B 108347
100168 B 108348
100388 B 108568
100389 B 108569
100390 B 108570
100391 B 108571
100431 B 108611
100432 B 108612
100435 B 108615
100436 B 108616
100665 B 108845
100666 B 108846
100667 B 108847
100668 B 108848
100669 B 108849
100670 B 108850
100671 B 108851
100672 B 108852
100673 B 108853
100674 B 108854
100675 B 108855
100676 B 108856
101011 B 109191
101012 B 109192
101013 B 109193
101014 B 109194
101015 B 109195
101016 B 109196