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 (
    86688, 86690, 83041, 83043, 90877, 90879, 
    90956, 90958, 91070, 91071, 91073, 
    91074, 91075, 89815, 89867, 89939, 
    91505, 82841, 82914, 82987, 85303, 
    85400, 85451, 85502, 86492, 86494, 
    86768, 86770, 84663, 84664, 85306, 
    85308, 85403, 85405, 85454, 85456, 
    85505, 85507, 91114, 91116, 91120, 
    91122, 91125, 91127, 91129, 91200, 
    91202, 91206, 91208, 91211, 91213, 
    91215, 91255, 91257, 91261, 91263, 
    91266, 91268, 91270, 85352, 85354, 
    85349, 91145, 91147, 91151, 91153, 
    91156, 91158, 91160, 82811, 82813, 
    82884, 82886, 82957, 82959, 83331, 
    83333, 83341, 83343, 89493, 89494, 
    89501, 89502, 89509, 89510, 89517, 
    89518, 84302, 84303, 90567, 90573, 
    90579, 82592, 82594, 83355, 83357
  )

Query time 0.00070

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 (86688,86690,83041,83043,90877,90879,90956,90958,91070,91071,91073,91074,91075,89815,89867,89939,91505,82841,82914,82987,85303,85400,85451,85502,86492,86494,86768,86770,84663,84664,85306,85308,85403,85405,85454,85456,85505,85507,91114,91116,91120,91122,91125,91127,91129,91200,91202,91206,91208,91211,91213,91215,91255,91257,91261,91263,91266,91268,91270,85352,85354,85349,91145,91147,91151,91153,91156,91158,91160,82811,82813,82884,82886,82957,82959,83331,83333,83341,83343,89493,89494,89501,89502,89509,89510,89517,89518,84302,84303,90567,90573,90579,82592,82594,83355,83357))",
          "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"
          ]
        }
      }
    ]
  }
}