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 (
    389137, 415660, 389200, 435303, 388788, 
    389835, 388510, 389810, 427217, 425347, 
    390290, 390241, 389859, 389060, 415383, 
    389208, 388646, 389352, 388796, 388698, 
    389460, 389091, 388735, 415385, 426890, 
    389205, 390141, 435215, 388655, 389361, 
    434573, 388392, 389207, 389812, 389043, 
    415499, 389198, 388465, 390112, 388429, 
    388746, 389482, 390168, 391773, 388927, 
    415727, 388576, 390200, 390126, 388653, 
    389832, 390111, 388379, 389174, 389536, 
    415473, 389494, 389500, 390240, 389571, 
    435214, 388421, 388520, 415523, 388384, 
    435297, 388742, 388675, 415513, 435291, 
    389504, 415704, 388803, 388946, 415533, 
    388858, 390293, 435292, 389363, 388710, 
    389527, 388677, 388854, 388435, 388593, 
    388423, 388591, 388717, 388979, 388624, 
    427198, 389476, 415315, 389216, 388458, 
    390239, 415504, 415472, 389524, 389100
  )

Query time 0.00124

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "430.18"
    },
    "nested_loop": [
      {
        "table": {
          "table_name": "p",
          "access_type": "range",
          "possible_keys": [
            "PRIMARY",
            "idx_group_id"
          ],
          "key": "PRIMARY",
          "used_key_parts": [
            "product_id"
          ],
          "key_length": "3",
          "rows_examined_per_scan": 100,
          "rows_produced_per_join": 100,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "120.12",
            "eval_cost": "20.00",
            "prefix_cost": "140.12",
            "data_read_per_join": "1K"
          },
          "used_columns": [
            "product_id",
            "parent_product_id",
            "group_id"
          ],
          "attached_condition": "(`webmarco`.`p`.`product_id` in (389137,415660,389200,435303,388788,389835,388510,389810,427217,425347,390290,390241,389859,389060,415383,389208,388646,389352,388796,388698,389460,389091,388735,415385,426890,389205,390141,435215,388655,389361,434573,388392,389207,389812,389043,415499,389198,388465,390112,388429,388746,389482,390168,391773,388927,415727,388576,390200,390126,388653,389832,390111,388379,389174,389536,415473,389494,389500,390240,389571,435214,388421,388520,415523,388384,435297,388742,388675,415513,435291,389504,415704,388803,388946,415533,388858,390293,435292,389363,388710,389527,388677,388854,388435,388593,388423,388591,388717,388979,388624,427198,389476,415315,389216,388458,390239,415504,415472,389524,389100))"
        }
      },
      {
        "table": {
          "table_name": "g",
          "access_type": "eq_ref",
          "possible_keys": [
            "PRIMARY"
          ],
          "key": "PRIMARY",
          "used_key_parts": [
            "id"
          ],
          "key_length": "3",
          "ref": [
            "webmarco.p.group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 100,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "100.00",
            "eval_cost": "20.00",
            "prefix_cost": "260.12",
            "data_read_per_join": "39K"
          },
          "used_columns": [
            "id",
            "code"
          ]
        }
      },
      {
        "table": {
          "table_name": "f",
          "access_type": "ref",
          "possible_keys": [
            "idx_group_id"
          ],
          "key": "idx_group_id",
          "used_key_parts": [
            "group_id"
          ],
          "key_length": "3",
          "ref": [
            "webmarco.p.group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 141,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "141.72",
            "eval_cost": "28.34",
            "prefix_cost": "430.18",
            "data_read_per_join": "14K"
          },
          "used_columns": [
            "feature_id",
            "purpose",
            "group_id"
          ]
        }
      }
    ]
  }
}