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 = 7244 
WHERE 
  cscart_products_categories.product_id IN (
    87189, 87206, 87223, 87261, 87188, 87205, 
    87222, 87230, 89086, 89087, 87260, 
    89085, 88170, 88218, 88194, 88206, 
    87271, 87272, 87273, 88668, 88715, 
    88762, 87279, 87278, 87277, 87268, 
    87266, 87270, 87263, 87267, 87451, 
    87452, 88558, 88571, 88608, 88665, 
    88666, 88667, 88712, 88713, 88714, 
    88751, 88760, 88761, 91461, 87264, 
    87262, 87265, 87276, 87275, 87274, 
    87269, 88526, 88759, 87187, 87204, 
    87221, 87229, 84767, 84780, 84789, 
    84762, 88556, 88557, 88664, 88711, 
    88396, 88525, 88524, 88555, 93749, 
    93830, 93850, 93851, 93852, 93853, 
    93854, 94595, 94596, 94597, 94598, 
    94599, 94600, 94601, 94602, 94603, 
    94641, 94642, 94643, 94644, 94645, 
    94646, 94647, 94648, 94649, 94651
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00679

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "104.70"
    },
    "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": 116,
            "rows_produced_per_join": 116,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "11.90",
              "eval_cost": "11.60",
              "prefix_cost": "23.50",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (87189,87206,87223,87261,87188,87205,87222,87230,89086,89087,87260,89085,88170,88218,88194,88206,87271,87272,87273,88668,88715,88762,87279,87278,87277,87268,87266,87270,87263,87267,87451,87452,88558,88571,88608,88665,88666,88667,88712,88713,88714,88751,88760,88761,91461,87264,87262,87265,87276,87275,87274,87269,88526,88759,87187,87204,87221,87229,84767,84780,84789,84762,88556,88557,88664,88711,88396,88525,88524,88555,93749,93830,93850,93851,93852,93853,93854,94595,94596,94597,94598,94599,94600,94601,94602,94603,94641,94642,94643,94644,94645,94646,94647,94648,94649,94651))"
          }
        },
        {
          "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": 116,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "29.00",
              "eval_cost": "11.60",
              "prefix_cost": "64.10",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        },
        {
          "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": 5,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "29.00",
              "eval_cost": "0.58",
              "prefix_cost": "104.70",
              "data_read_per_join": "15K"
            },
            "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')))"
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
84762 7245M
84767 7245M
84780 7245M
84789 7245M
87187 7245M
87188 7245M
87189 7245M
87204 7245M
87205 7245M
87206 7245M
87221 7245M
87222 7245M
87223 7245M
87229 7245M
87230 7245M
87260 7244,7245M 0
87261 7244,7245M 0
87262 7244,7246M 0
87263 7244,7246M 0
87264 7244,7246M 0
87265 7244,7246M 0
87266 7244,7246M 0
87267 7244,7246M 0
87268 7244,7246M 0
87269 7244,7246M 0
87270 7244,7246M 0
87271 7244,7246M 0
87272 7244,7246M 0
87273 7244,7246M 0
87274 7244,7246M 0
87275 7244,7246M 0
87276 7244,7246M 0
87277 7244,7246M 0
87278 7244,7246M 0
87279 7244,7246M 0
87451 7245M
87452 7245M
88170 7245M
88194 7245M
88206 7245M
88218 7245M
88396 7245M
88524 7245M
88525 7245M
88526 7245M
88555 7245M
88556 7245M
88557 7245M
88558 7245M
88571 7245M
88608 7245M
88664 7245M
88665 7245M
88666 7245M
88667 7245M
88668 7245M
88711 7245M
88712 7245M
88713 7245M
88714 7245M
88715 7245M
88751 7245M
88759 7245M
88760 7245M
88761 7245M
88762 7245M
89085 7245M
89086 7245M
89087 7245M
91461 7245M
93749 7245M
93830 7245M
93850 7245M
93851 7245M
93852 7245M
93853 7245M
93854 7245M
94595 7245M
94596 7245M
94597 7245M
94598 7245M
94599 7245M
94600 7245M
94601 7245M
94602 7245M
94603 7245M
94641 7245M
94642 7245M
94643 7245M
94644 7245M
94645 7245M
94646 7245M
94647 7245M
94648 7245M
94649 7245M
94651 7245M