SELECT 
  f.feature_id, 
  f.purpose, 
  p.product_id, 
  p.parent_product_id, 
  g.id, 
  g.code 
FROM 
  cscart_product_variation_group_features AS f 
  INNER JOIN cscart_product_variation_groups AS g ON f.group_id = g.id 
  INNER JOIN cscart_product_variation_group_products AS p ON f.group_id = p.group_id 
WHERE 
  p.product_id IN (
    94761, 94763, 94765, 94816, 94950, 94951, 
    94956, 94957, 95566, 95569, 95571, 
    95574, 95575, 95578, 95579, 95580, 
    95581, 95587, 95588, 95589, 95590, 
    95591, 95629, 95630, 95631, 95632, 
    95633, 95634, 95635, 95636, 95637, 
    95641, 95642, 95643, 95644, 95647, 
    95648, 95649, 95650, 95651, 95652, 
    95655, 95656, 95657, 95658, 95659, 
    95660, 95935, 95938, 95939, 95942, 
    95943, 96213, 96214, 96215, 96216, 
    96217, 96218, 96219, 96220, 96221, 
    96222, 96223, 96224, 96225, 96226, 
    96227, 96228, 96229, 96230, 96231, 
    96232, 96233, 96234, 96235, 96236, 
    96237, 96238, 96239, 96240, 96241, 
    96242, 96243, 96244, 96334, 96336, 
    96338, 96340, 96341, 96342, 96343, 
    96344, 96345, 96346, 96347, 96348
  )

Query time 0.00029

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "1.05"
    },
    "nested_loop": [
      {
        "table": {
          "table_name": "f",
          "access_type": "ALL",
          "possible_keys": [
            "idx_group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 1,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "0.25",
            "eval_cost": "0.10",
            "prefix_cost": "0.35",
            "data_read_per_join": "104"
          },
          "used_columns": [
            "feature_id",
            "purpose",
            "group_id"
          ]
        }
      },
      {
        "table": {
          "table_name": "g",
          "access_type": "eq_ref",
          "possible_keys": [
            "PRIMARY"
          ],
          "key": "PRIMARY",
          "used_key_parts": [
            "id"
          ],
          "key_length": "3",
          "ref": [
            "nuie_scalesta_net.f.group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 1,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "0.25",
            "eval_cost": "0.10",
            "prefix_cost": "0.70",
            "data_read_per_join": "400"
          },
          "used_columns": [
            "id",
            "code"
          ]
        }
      },
      {
        "table": {
          "table_name": "p",
          "access_type": "ref",
          "possible_keys": [
            "PRIMARY",
            "idx_group_id"
          ],
          "key": "idx_group_id",
          "used_key_parts": [
            "group_id"
          ],
          "key_length": "3",
          "ref": [
            "nuie_scalesta_net.f.group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 1,
          "filtered": "100.00",
          "index_condition": "(`nuie_scalesta_net`.`p`.`product_id` in (94761,94763,94765,94816,94950,94951,94956,94957,95566,95569,95571,95574,95575,95578,95579,95580,95581,95587,95588,95589,95590,95591,95629,95630,95631,95632,95633,95634,95635,95636,95637,95641,95642,95643,95644,95647,95648,95649,95650,95651,95652,95655,95656,95657,95658,95659,95660,95935,95938,95939,95942,95943,96213,96214,96215,96216,96217,96218,96219,96220,96221,96222,96223,96224,96225,96226,96227,96228,96229,96230,96231,96232,96233,96234,96235,96236,96237,96238,96239,96240,96241,96242,96243,96244,96334,96336,96338,96340,96341,96342,96343,96344,96345,96346,96347,96348))",
          "cost_info": {
            "read_cost": "0.25",
            "eval_cost": "0.10",
            "prefix_cost": "1.05",
            "data_read_per_join": "16"
          },
          "used_columns": [
            "product_id",
            "parent_product_id",
            "group_id"
          ]
        }
      }
    ]
  }
}