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 (
    94450, 94504, 94796, 94797, 94802, 94803, 
    94804, 94805, 94806, 94807, 94808, 
    94809, 94810, 94825, 94826, 94832, 
    94842, 95312, 95313, 95555, 95556, 
    95737, 95738, 95739, 95740, 95741, 
    95742, 95753, 95754, 95755, 95765, 
    95786, 95787, 95788, 95819, 95820, 
    95885, 95886, 95887, 95888, 96117, 
    96118, 96176, 96529, 96569, 97628, 
    98036, 98037
  ) 
  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 (94450,94504,94796,94797,94802,94803,94804,94805,94806,94807,94808,94809,94810,94825,94826,94832,94842,95312,95313,95555,95556,95737,95738,95739,95740,95741,95742,95753,95754,95755,95765,95786,95787,95788,95819,95820,95885,95886,95887,95888,96117,96118,96176,96529,96569,97628,98036,98037)) 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
94450 B 102622
94504 B 102676
94796 B 102968
94797 B 102969
94802 B 102974
94803 B 102975
94804 B 102976
94805 B 102977
94806 B 102978
94807 B 102979
94808 B 102980
94809 B 102981
94810 B 102982
94825 B 102997
94826 B 102998
94832 B 103004
94842 B 103014
95312 B 103484
95313 B 103485
95555 B 103727
95556 B 103728
95737 B 103909
95738 B 103910
95739 B 103911
95740 B 103912
95741 B 103913
95742 B 103914
95753 B 103925
95754 B 103926
95755 B 103927
95765 B 103937
95786 B 103958
95787 B 103959
95788 B 103960
95819 B 103991
95820 B 103992
95885 B 104057
95886 B 104058
95887 B 104059
95888 B 104060
96117 B 104289
96118 B 104290
96176 B 104348
96529 B 104710
96569 B 104750
97628 B 105809
98036 B 106217
98037 B 106218