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 = 7300 
WHERE 
  cscart_products_categories.product_id IN (
    91986, 91987, 91988, 91989, 91990, 91991, 
    91969, 91971, 91972, 91974, 91975, 
    86810, 82384, 82557, 82369, 82345, 
    82373, 82375, 91952, 82400, 82408, 
    82418, 89590, 89589, 86806, 82344, 
    82560, 82565, 82569, 82573, 82562, 
    82566, 82570, 91968, 82555, 82553, 
    82554, 86232, 86233, 82559, 82552, 
    82564, 82568, 82572, 91976, 91984, 
    86809, 82558
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01678

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "77.69"
    },
    "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": 86,
            "rows_produced_per_join": 86,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "8.89",
              "eval_cost": "8.60",
              "prefix_cost": "17.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 (91986,91987,91988,91989,91990,91991,91969,91971,91972,91974,91975,86810,82384,82557,82369,82345,82373,82375,91952,82400,82408,82418,89590,89589,86806,82344,82560,82565,82569,82573,82562,82566,82570,91968,82555,82553,82554,86232,86233,82559,82552,82564,82568,82572,91976,91984,86809,82558))"
          }
        },
        {
          "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": 86,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "21.50",
              "eval_cost": "8.60",
              "prefix_cost": "47.59",
              "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": 4,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "21.50",
              "eval_cost": "0.43",
              "prefix_cost": "77.69",
              "data_read_per_join": "11K"
            },
            "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
82344 7302M
82345 7302M
82369 7161M,7303
82373 7304M
82375 7151M,7301
82384 7302M
82400 7302M
82408 7302M
82418 7302M
82552 7303,7161M
82553 7303,7161M
82554 7161M,7303
82555 7161M,7303
82557 7161M,7303
82558 7161M,7303
82559 7161M,7303
82560 7161M,7303
82562 7161M,7303
82564 7303,7161M
82565 7303,7161M
82566 7303,7161M
82568 7161M,7303
82569 7161M,7303
82570 7161M,7303
82572 7161M,7303
82573 7161M,7303
86232 7302M
86233 7302M
86806 7151M,7301
86809 7151M,7301
86810 7301,7151M
89589 7301,7151M
89590 7301,7151M
91952 7302M
91968 7303,7161M
91969 7303,7161M
91971 7303,7161M
91972 7303,7161M
91974 7303,7161M
91975 7303,7161M
91976 7303,7161M
91984 7303,7161M
91986 7303,7161M
91987 7161M,7303
91988 7161M,7303
91989 7303,7161M
91990 7161M,7303
91991 7161M,7303