SELECT 
  cscart_june_setupproducts_categories.product_id, 
  GROUP_CONCAT(
    IF(
      cscart_june_setupproducts_categories.link_type = "M", 
      CONCAT(
        cscart_june_setupproducts_categories.category_id, 
        "M"
      ), 
      cscart_june_setupproducts_categories.category_id
    )
  ) AS category_ids 
FROM 
  cscart_june_setupproducts_categories 
  INNER JOIN cscart_june_setupcategories ON cscart_june_setupcategories.category_id = cscart_june_setupproducts_categories.category_id 
  AND cscart_june_setupcategories.storefront_id IN (0, 1) 
  AND (
    cscart_june_setupcategories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_june_setupcategories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_june_setupcategories.usergroup_ids
    )
  ) 
  AND cscart_june_setupcategories.status IN ('A', 'H') 
WHERE 
  cscart_june_setupproducts_categories.product_id IN (
    57, 58, 59, 60, 62, 63, 64, 65, 67, 68, 69, 
    70, 71, 72, 73, 74, 75, 76, 4
  ) 
GROUP BY 
  cscart_june_setupproducts_categories.product_id

Query time 0.00117

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "31.12"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "0.58"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_june_setupcategories",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "rows_examined_per_scan": 84,
            "rows_produced_per_join": 3,
            "filtered": "4.00",
            "cost_info": {
              "read_cost": "19.53",
              "eval_cost": "0.67",
              "prefix_cost": "20.20",
              "data_read_per_join": "8K"
            },
            "used_columns": [
              "category_id",
              "storefront_id",
              "usergroup_ids",
              "status"
            ],
            "attached_condition": "((`vishalecarter_june_setup`.`cscart_june_setupcategories`.`storefront_id` in (0,1)) and ((`vishalecarter_june_setup`.`cscart_june_setupcategories`.`usergroup_ids` = '') or find_in_set(0,`vishalecarter_june_setup`.`cscart_june_setupcategories`.`usergroup_ids`) or find_in_set(1,`vishalecarter_june_setup`.`cscart_june_setupcategories`.`usergroup_ids`)) and (`vishalecarter_june_setup`.`cscart_june_setupcategories`.`status` in ('A','H')))"
          }
        },
        {
          "table": {
            "table_name": "cscart_june_setupproducts_categories",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY",
              "pt"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "vishalecarter_june_setup.cscart_june_setupcategories.category_id"
            ],
            "rows_examined_per_scan": 2,
            "rows_produced_per_join": 0,
            "filtered": "8.58",
            "index_condition": "(`vishalecarter_june_setup`.`cscart_june_setupproducts_categories`.`product_id` in (57,58,59,60,62,63,64,65,67,68,69,70,71,72,73,74,75,76,4))",
            "cost_info": {
              "read_cost": "9.00",
              "eval_cost": "0.12",
              "prefix_cost": "30.55",
              "data_read_per_join": "9"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids
4 190M
57 187M
58 188M
59 188M
60 176M
62 189M
63 189M
64 189M
65 189M
67 236M
68 236M
69 236M
70 236M
71 236M
72 240M
73 240M
74 240M
75 240M
76 240M