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 = 7336 
WHERE 
  cscart_products_categories.product_id IN (
    96602, 96603, 96606, 96608, 96610, 96612, 
    96613, 96616, 96617, 96618, 96619, 
    96625, 96626, 96627, 96628, 96629, 
    96668, 96669, 96670, 96671, 96672, 
    96673, 96674, 96675, 96676, 96680, 
    96681, 96682, 96683, 96686, 96687, 
    96688, 96689, 96690, 96691, 96692, 
    96698, 96699, 96700, 96701, 96702, 
    96703, 96704, 96705, 97874, 97883, 
    97884, 97885, 97887, 97889, 98421, 
    98424, 98425, 98426, 98428, 98432, 
    98434, 98436, 98437, 98438, 98442, 
    98446, 98449, 98450, 98452, 98455, 
    98485, 98486, 98487, 98488, 98489, 
    98491, 98493, 98494, 98495, 98503, 
    98504, 98505, 98506, 98507, 98508, 
    98722, 98723, 98724, 98725, 98726, 
    98727, 98728, 98729, 98730, 98731, 
    98732, 98733, 98734, 98735, 98736
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01703

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "135.66"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "10.30"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "rows_examined_per_scan": 208,
            "rows_produced_per_join": 8,
            "filtered": "4.00",
            "cost_info": {
              "read_cost": "20.72",
              "eval_cost": "0.83",
              "prefix_cost": "21.55",
              "data_read_per_join": "21K"
            },
            "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": "cscart_products_categories",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY",
              "link_type",
              "pt"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "nuie_scalesta_net.cscart_categories.category_id"
            ],
            "rows_examined_per_scan": 117,
            "rows_produced_per_join": 10,
            "filtered": "1.05",
            "cost_info": {
              "read_cost": "2.33",
              "eval_cost": "1.03",
              "prefix_cost": "121.75",
              "data_read_per_join": "164"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (96602,96603,96606,96608,96610,96612,96613,96616,96617,96618,96619,96625,96626,96627,96628,96629,96668,96669,96670,96671,96672,96673,96674,96675,96676,96680,96681,96682,96683,96686,96687,96688,96689,96690,96691,96692,96698,96699,96700,96701,96702,96703,96704,96705,97874,97883,97884,97885,97887,97889,98421,98424,98425,98426,98428,98432,98434,98436,98437,98438,98442,98446,98449,98450,98452,98455,98485,98486,98487,98488,98489,98491,98493,98494,98495,98503,98504,98505,98506,98507,98508,98722,98723,98724,98725,98726,98727,98728,98729,98730,98731,98732,98733,98734,98735,98736))"
          }
        },
        {
          "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": 10,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.58",
              "eval_cost": "1.03",
              "prefix_cost": "125.35",
              "data_read_per_join": "164"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
96602 7219M,7313,7338
96603 7219M,7313,7338
96606 7219M,7313,7338
96608 7219M,7313,7338
96610 7219M,7313,7338
96612 7219M,7313,7338
96613 7219M,7313,7338
96616 7219M,7313,7338
96617 7219M,7313,7338
96618 7219M,7313,7338
96619 7219M,7313,7338
96625 7219M,7313,7338
96626 7219M,7313,7338
96627 7219M,7313,7338
96628 7219M,7313,7338
96629 7219M,7313,7338
96668 7219M,7313,7338
96669 7219M,7313,7338
96670 7219M,7313,7338
96671 7219M,7313,7338
96672 7219M,7313,7338
96673 7219M,7313,7338
96674 7219M,7313,7338
96675 7219M,7313,7338
96676 7219M,7313,7338
96680 7219M,7313,7338
96681 7219M,7313,7338
96682 7219M,7313,7338
96683 7219M,7313,7338
96686 7219M,7313,7338
96687 7219M,7313,7338
96688 7219M,7313,7338
96689 7219M,7313,7338
96690 7219M,7313,7338
96691 7219M,7313,7338
96692 7219M,7313,7338
96698 7329M,7339
96699 7329M,7339
96700 7329M,7339
96701 7329M,7339
96702 7329M,7339
96703 7329M,7339
96704 7329M,7339
96705 7329M,7339
97874 7219M,7313,7338
97883 7219M,7313,7338
97884 7219M,7313,7338
97885 7219M,7313,7338
97887 7219M,7313,7338
97889 7219M,7313,7338
98421 7219M,7313,7338
98424 7219M,7313,7338
98425 7219M,7313,7338
98426 7219M,7313,7338
98428 7219M,7313,7338
98432 7219M,7313,7338
98434 7219M,7313,7338
98436 7219M,7313,7338
98437 7219M,7313,7338
98438 7219M,7313,7338
98442 7219M,7313,7338
98446 7219M,7313,7338
98449 7219M,7313,7338
98450 7219M,7313,7338
98452 7219M,7313,7338
98455 7219M,7313,7338
98485 7219M,7313,7338
98486 7219M,7313,7338
98487 7219M,7313,7338
98488 7219M,7313,7338
98489 7219M,7313,7338
98491 7219M,7313,7338
98493 7219M,7313,7338
98494 7219M,7313,7338
98495 7219M,7313,7338
98503 7219M,7313,7338
98504 7219M,7313,7338
98505 7219M,7313,7338
98506 7219M,7313,7338
98507 7219M,7313,7338
98508 7219M,7313,7338
98722 7217M,7337
98723 7217M,7337
98724 7217M,7337
98725 7217M,7337
98726 7217M,7337
98727 7217M,7337
98728 7217M,7337
98729 7217M,7337
98730 7217M,7337
98731 7217M,7337
98732 7217M,7337
98733 7217M,7337
98734 7217M,7337
98735 7217M,7337
98736 7217M,7337