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 
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') 
WHERE 
  cscart_products_categories.product_id IN (
    2102, 2101, 2100, 2099, 2098, 2623, 2624, 
    2625, 2626, 2702, 2703, 2729, 2730, 
    2731, 2732, 2761, 2762, 2763, 2764, 
    4058, 4085, 4086, 4087, 4088, 5041, 
    5037, 2455, 8488, 8487, 8486
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00217

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "79.51"
    },
    "grouping_operation": {
      "using_filesort": false,
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_products_categories",
            "access_type": "range",
            "possible_keys": [
              "PRIMARY",
              "pt"
            ],
            "key": "pt",
            "used_key_parts": [
              "product_id"
            ],
            "key_length": "3",
            "rows_examined_per_scan": 90,
            "rows_produced_per_join": 90,
            "filtered": "100.00",
            "index_condition": "(`softwarepirmam_hewadelivard_cscart_4`.`cscart_products_categories`.`product_id` in (2102,2101,2100,2099,2098,2623,2624,2625,2626,2702,2703,2729,2730,2731,2732,2761,2762,2763,2764,4058,4085,4086,4087,4088,5041,5037,2455,8488,8487,8486))",
            "cost_info": {
              "read_cost": "39.01",
              "eval_cost": "9.00",
              "prefix_cost": "48.01",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ]
          }
        },
        {
          "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": [
              "softwarepirmam_hewadelivard_cscart_4.cscart_products_categories.category_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 4,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "22.50",
              "eval_cost": "0.45",
              "prefix_cost": "79.51",
              "data_read_per_join": "14K"
            },
            "used_columns": [
              "category_id",
              "storefront_id",
              "usergroup_ids",
              "status"
            ],
            "attached_condition": "((`softwarepirmam_hewadelivard_cscart_4`.`cscart_categories`.`storefront_id` in (0,1)) and ((`softwarepirmam_hewadelivard_cscart_4`.`cscart_categories`.`usergroup_ids` = '') or (0 <> find_in_set(0,`softwarepirmam_hewadelivard_cscart_4`.`cscart_categories`.`usergroup_ids`)) or (0 <> find_in_set(1,`softwarepirmam_hewadelivard_cscart_4`.`cscart_categories`.`usergroup_ids`))) and (`softwarepirmam_hewadelivard_cscart_4`.`cscart_categories`.`status` in ('A','H')))"
          }
        }
      ]
    }
  }
}

Result

product_id category_ids
2098 371,250,397,395M
2099 397,250,371,395M
2100 250,371,397,395M
2101 250,371,397,395M
2102 397,250,371,395M
2455 454,453,372,166,174,190M
2623 166,234,236M
2624 166,234,236M
2625 166,234,236M
2626 166,234,236M
2702 423,424,450,166M
2703 423,424,450,166M
2729 329,166,344M
2730 329,166,344M
2731 329,166,344M
2732 329,166,344M
2761 329,166,457M
2762 329,166,457M
2763 329,166,457M
2764 329,166,457M
4058 386,308,350,250,166,382M
4085 167,166,353M
4086 167,166,353M
4087 167,166,353M
4088 167,166,353M
5037 234,166,559M
5041 234,166,559M
8486 174,372,454,166,453,190M
8487 166,453,174,372,454,190M
8488 166,453,174,372,454,190M