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 (
    91929, 91930, 91931, 91932, 91933, 91934, 
    91935, 89434, 89441, 82414, 86855, 
    89432, 89439, 82396, 86851, 86853, 
    84263, 84267, 82343, 84264, 89729, 
    89734, 86849, 89730, 91293, 82340, 
    82341, 82346, 86389, 86391, 89430, 
    89123, 89127, 89159, 89550, 83087, 
    89437, 91289, 89157, 89548, 90092, 
    90102, 90111, 82329, 86813, 86847, 
    89100, 83114
  ) 
  AND cscart_discussion.object_type = "P" 
GROUP BY 
  cscart_discussion.object_id

Query time 0.00123

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 (91929,91930,91931,91932,91933,91934,91935,89434,89441,82414,86855,89432,89439,82396,86851,86853,84263,84267,82343,84264,89729,89734,86849,89730,91293,82340,82341,82346,86389,86391,89430,89123,89127,89159,89550,83087,89437,91289,89157,89548,90092,90102,90111,82329,86813,86847,89100,83114)) 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
82329 D 90366
82340 D 90377
82341 D 90378
82343 D 90380
82346 D 90383
82396 D 90434
82414 D 90452
83087 D 91125
83114 D 91152
84263 D 92301
84264 D 92302
84267 D 92305
86389 D 94427
86391 D 94429
86813 D 94851
86847 D 94885
86849 D 94887
86851 D 94889
86853 D 94891
86855 D 94893
89100 D 97138
89123 D 97161
89127 D 97165
89157 D 97195
89159 D 97197
89430 D 97468
89432 D 97470
89434 D 97472
89437 D 97475
89439 D 97477
89441 D 97479
89548 D 97586
89550 D 97588
89729 D 97767
89730 D 97768
89734 D 97772
90092 D 98130
90102 D 98140
90111 D 98149
91289 D 99362
91293 D 99366
91929 D 100007
91930 D 100008
91931 D 100009
91932 D 100010
91933 D 100011
91934 D 100012
91935 D 100013