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 (
    94582, 94853, 95756, 95758, 95770, 95771, 
    95772, 95774, 95775, 95776, 95824, 
    95825, 95826, 96573, 97608, 97610, 
    97611, 97612, 97613, 97614, 97615, 
    97617, 97618, 97629, 97630, 97631, 
    97633, 97635, 97636, 97637, 97640, 
    97641, 97642, 97643, 97644, 97645, 
    97646, 97647, 97648, 97649, 97650, 
    97651, 97652, 97653, 97654, 97655, 
    97656, 97657
  ) 
  AND cscart_discussion.object_type = "P" 
GROUP BY 
  cscart_discussion.object_id

Query time 0.00080

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 (94582,94853,95756,95758,95770,95771,95772,95774,95775,95776,95824,95825,95826,96573,97608,97610,97611,97612,97613,97614,97615,97617,97618,97629,97630,97631,97633,97635,97636,97637,97640,97641,97642,97643,97644,97645,97646,97647,97648,97649,97650,97651,97652,97653,97654,97655,97656,97657)) 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
94582 B 102754
94853 B 103025
95756 B 103928
95758 B 103930
95770 B 103942
95771 B 103943
95772 B 103944
95774 B 103946
95775 B 103947
95776 B 103948
95824 B 103996
95825 B 103997
95826 B 103998
96573 B 104754
97608 B 105789
97610 B 105791
97611 B 105792
97612 B 105793
97613 B 105794
97614 B 105795
97615 B 105796
97617 B 105798
97618 B 105799
97629 B 105810
97630 B 105811
97631 B 105812
97633 B 105814
97635 B 105816
97636 B 105817
97637 B 105818
97640 B 105821
97641 B 105822
97642 B 105823
97643 B 105824
97644 B 105825
97645 B 105826
97646 B 105827
97647 B 105828
97648 B 105829
97649 B 105830
97650 B 105831
97651 B 105832
97652 B 105833
97653 B 105834
97654 B 105835
97655 B 105836
97656 B 105837
97657 B 105838