SELECT 
  cscart_products_categories.product_id, 
  GROUP_CONCAT(
    IF(
      cscart_products_categories.link_type = "M", 
      CONCAT(
        cscart_products_categories.category_id, 
        "M"
      ), 
      cscart_products_categories.category_id
    )
  ) AS category_ids, 
  product_position_source.position AS position 
FROM 
  cscart_products_categories 
  INNER JOIN cscart_categories ON cscart_categories.category_id = cscart_products_categories.category_id 
  AND cscart_categories.storefront_id IN (0, 1) 
  AND (
    cscart_categories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_categories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_categories.usergroup_ids
    )
  ) 
  AND cscart_categories.status IN ('A', 'H') 
  LEFT JOIN cscart_products_categories AS product_position_source ON cscart_products_categories.product_id = product_position_source.product_id 
  AND product_position_source.category_id = 7229 
WHERE 
  cscart_products_categories.product_id IN (
    96369, 96370, 96371, 96372, 96373, 96374, 
    96375, 96376, 96377, 96378, 96379, 
    96380, 96381, 96382, 96392, 96393, 
    96401, 96402, 96403, 96404, 96405, 
    96406, 96407, 96408, 96411, 96412, 
    96413, 96414, 96415, 96416, 96417, 
    96418, 96419, 96420, 96421, 96422, 
    96423, 96424, 96425, 96426, 96427, 
    96428, 96430, 96431, 96434, 96435, 
    96436, 96437, 96438, 96439, 96440, 
    96441, 96475, 96476, 96477, 96478, 
    96479, 96480, 96481, 96482, 96483, 
    96484, 96485, 96486, 96487, 96488, 
    96489, 97802, 97803, 97804, 97805, 
    97806, 97807, 97808, 97809, 98590, 
    98591, 98592, 98593, 98594, 98595, 
    98596, 98597, 98598, 98599, 98604, 
    98605, 98614, 98615, 98617, 98618, 
    98619, 98620, 98621, 98622, 98623
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00145

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "54.77"
    },
    "grouping_operation": {
      "using_filesort": false,
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_products_categories",
            "access_type": "range",
            "possible_keys": [
              "PRIMARY",
              "link_type",
              "pt"
            ],
            "key": "pt",
            "used_key_parts": [
              "product_id"
            ],
            "key_length": "3",
            "rows_examined_per_scan": 96,
            "rows_produced_per_join": 96,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "9.89",
              "eval_cost": "9.60",
              "prefix_cost": "19.49",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (96369,96370,96371,96372,96373,96374,96375,96376,96377,96378,96379,96380,96381,96382,96392,96393,96401,96402,96403,96404,96405,96406,96407,96408,96411,96412,96413,96414,96415,96416,96417,96418,96419,96420,96421,96422,96423,96424,96425,96426,96427,96428,96430,96431,96434,96435,96436,96437,96438,96439,96440,96441,96475,96476,96477,96478,96479,96480,96481,96482,96483,96484,96485,96486,96487,96488,96489,97802,97803,97804,97805,97806,97807,97808,97809,98590,98591,98592,98593,98594,98595,98596,98597,98598,98599,98604,98605,98614,98615,98617,98618,98619,98620,98621,98622,98623))"
          }
        },
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "nuie_scalesta_net.cscart_products_categories.category_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 4,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "24.00",
              "eval_cost": "0.48",
              "prefix_cost": "53.09",
              "data_read_per_join": "12K"
            },
            "used_columns": [
              "category_id",
              "usergroup_ids",
              "status",
              "storefront_id"
            ],
            "attached_condition": "((`nuie_scalesta_net`.`cscart_categories`.`storefront_id` in (0,1)) and ((`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids` = '') or (0 <> find_in_set(0,`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids`)) or (0 <> find_in_set(1,`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids`))) and (`nuie_scalesta_net`.`cscart_categories`.`status` in ('A','H')))"
          }
        },
        {
          "table": {
            "table_name": "product_position_source",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY",
              "pt"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id",
              "product_id"
            ],
            "key_length": "6",
            "ref": [
              "const",
              "nuie_scalesta_net.cscart_products_categories.product_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 4,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "1.20",
              "eval_cost": "0.48",
              "prefix_cost": "54.77",
              "data_read_per_join": "76"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
96369 7229M 0
96370 7229M 0
96371 7229M 0
96372 7229M 0
96373 7229M 0
96374 7229M 0
96375 7229M 0
96376 7229M 0
96377 7229M 0
96378 7229M 0
96379 7229M 0
96380 7229M 0
96381 7229M 0
96382 7229M 0
96392 7229M 0
96393 7229M 0
96401 7229M 0
96402 7229M 0
96403 7229M 0
96404 7229M 0
96405 7229M 0
96406 7229M 0
96407 7229M 0
96408 7229M 0
96411 7229M 0
96412 7229M 0
96413 7229M 0
96414 7229M 0
96415 7229M 0
96416 7229M 0
96417 7229M 0
96418 7229M 0
96419 7229M 0
96420 7229M 0
96421 7229M 0
96422 7229M 0
96423 7229M 0
96424 7229M 0
96425 7229M 0
96426 7229M 0
96427 7229M 0
96428 7229M 0
96430 7229M 0
96431 7229M 0
96434 7229M 0
96435 7229M 0
96436 7229M 0
96437 7229M 0
96438 7229M 0
96439 7229M 0
96440 7229M 0
96441 7229M 0
96475 7229M 0
96476 7229M 0
96477 7229M 0
96478 7229M 0
96479 7229M 0
96480 7229M 0
96481 7229M 0
96482 7229M 0
96483 7229M 0
96484 7229M 0
96485 7229M 0
96486 7229M 0
96487 7229M 0
96488 7229M 0
96489 7229M 0
97802 7229M 0
97803 7229M 0
97804 7229M 0
97805 7229M 0
97806 7229M 0
97807 7229M 0
97808 7229M 0
97809 7229M 0
98590 7229M 0
98591 7229M 0
98592 7229M 0
98593 7229M 0
98594 7229M 0
98595 7229M 0
98596 7229M 0
98597 7229M 0
98598 7229M 0
98599 7229M 0
98604 7229M 0
98605 7229M 0
98614 7229M 0
98615 7229M 0
98617 7229M 0
98618 7229M 0
98619 7229M 0
98620 7229M 0
98621 7229M 0
98622 7229M 0
98623 7229M 0