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 (
    89076, 90546, 84522, 84523, 84588, 84589, 
    85360, 89817, 89869, 89941, 91507, 
    83082, 83610, 86143, 86166, 86500, 
    86659, 86728, 86776, 89069, 90921, 
    91000, 84337, 85315, 85412, 85463, 
    85514, 86469, 86745, 84808, 84809, 
    84826, 84827, 84838, 84839, 91106, 
    91192, 91247, 84546, 84612, 82850, 
    82923, 82996, 83512, 83520, 90007, 
    89766, 89767
  ) 
  AND cscart_discussion.object_type = "P" 
GROUP BY 
  cscart_discussion.object_id

Query time 0.00106

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 (89076,90546,84522,84523,84588,84589,85360,89817,89869,89941,91507,83082,83610,86143,86166,86500,86659,86728,86776,89069,90921,91000,84337,85315,85412,85463,85514,86469,86745,84808,84809,84826,84827,84838,84839,91106,91192,91247,84546,84612,82850,82923,82996,83512,83520,90007,89766,89767)) 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
82850 D 90888
82923 D 90961
82996 D 91034
83082 D 91120
83512 D 91550
83520 D 91558
83610 D 91648
84337 D 92375
84522 D 92560
84523 D 92561
84546 D 92584
84588 D 92626
84589 D 92627
84612 D 92650
84808 D 92846
84809 D 92847
84826 D 92864
84827 D 92865
84838 D 92876
84839 D 92877
85315 D 93353
85360 D 93398
85412 D 93450
85463 D 93501
85514 D 93552
86143 D 94181
86166 D 94204
86469 D 94507
86500 D 94538
86659 D 94697
86728 D 94766
86745 D 94783
86776 D 94814
89069 D 97107
89076 D 97114
89766 D 97804
89767 D 97805
89817 D 97855
89869 D 97907
89941 D 97979
90007 D 98045
90546 D 98598
90921 D 98994
91000 D 99073
91106 D 99179
91192 D 99265
91247 D 99320
91507 D 99580