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 = 7143 
WHERE 
  cscart_products_categories.product_id IN (
    91285, 82353, 83086, 83141, 89122, 89161, 
    89371, 89552, 91291, 90095, 90105, 
    90114, 86229, 91287, 82347, 84120, 
    86808, 89736, 89989, 89990, 89991, 
    89992, 86811, 89098, 89593, 89594, 
    89126, 91938, 82330, 82348, 86807, 
    86846, 89732, 89374, 83117, 83127, 
    83136, 89292, 82352, 89287, 86231, 
    90122, 86819, 86821, 89272, 89275, 
    91292, 89357
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00173

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "56.98"
    },
    "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": 63,
            "rows_produced_per_join": 63,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "6.58",
              "eval_cost": "6.30",
              "prefix_cost": "12.88",
              "data_read_per_join": "1008"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (91285,82353,83086,83141,89122,89161,89371,89552,91291,90095,90105,90114,86229,91287,82347,84120,86808,89736,89989,89990,89991,89992,86811,89098,89593,89594,89126,91938,82330,82348,86807,86846,89732,89374,83117,83127,83136,89292,82352,89287,86231,90122,86819,86821,89272,89275,91292,89357))"
          }
        },
        {
          "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": 63,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "15.75",
              "eval_cost": "6.30",
              "prefix_cost": "34.93",
              "data_read_per_join": "1008"
            },
            "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": 3,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "15.75",
              "eval_cost": "0.32",
              "prefix_cost": "56.98",
              "data_read_per_join": "8K"
            },
            "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
82330 7146M
82347 7146M
82348 7146M
82352 7305,7160M
82353 7305,7160M
83086 7146M
83117 7145M
83127 7145M
83136 7145M
83141 7145M
84120 7145M
86229 7302M
86231 7302M
86807 7146M
86808 7146M
86811 7146M
86819 7326M
86821 7326M
86846 7146M
89098 7146M
89122 7146M
89126 7146M
89161 7146M
89272 7326M
89275 7326M
89287 7143,7153,7324,7325,7154M 0
89292 7143,7153,7324,7325,7154M 0
89357 7143,7153,7324,7325,7154M 0
89371 7326M
89374 7326M
89552 7146M
89593 7302M
89594 7302M
89732 7146M
89736 7146M
89989 7146M
89990 7146M
89991 7146M
89992 7146M
90095 7145M
90105 7145M
90114 7145M
90122 7145M
91285 7145M
91287 7145M
91291 7145M
91292 7146M
91938 7301,7151M