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 (
    90093, 90103, 90112, 89438, 82398, 86849, 
    89730, 91293, 89353, 82380, 89333, 
    89354, 82340, 82341, 82346, 86389, 
    86391, 89430, 83115, 83125, 83134, 
    82449, 86823, 89123, 89127, 89159, 
    89550, 89355, 89356, 83087
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00129

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "42.58"
    },
    "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": 47,
            "rows_produced_per_join": 47,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "4.98",
              "eval_cost": "4.70",
              "prefix_cost": "9.68",
              "data_read_per_join": "752"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (90093,90103,90112,89438,82398,86849,89730,91293,89353,82380,89333,89354,82340,82341,82346,86389,86391,89430,83115,83125,83134,82449,86823,89123,89127,89159,89550,89355,89356,83087))"
          }
        },
        {
          "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": 47,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "11.75",
              "eval_cost": "4.70",
              "prefix_cost": "26.13",
              "data_read_per_join": "752"
            },
            "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": 2,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "11.75",
              "eval_cost": "0.24",
              "prefix_cost": "42.58",
              "data_read_per_join": "6K"
            },
            "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
82340 7145M
82341 7145M
82346 7145M
82380 7326M
82398 7146M
82449 7305,7160M
83087 7145M
83115 7147M
83125 7147M
83134 7147M
86389 7145M
86391 7145M
86823 7326M
86849 7145M
89123 7145M
89127 7145M
89159 7145M
89333 7326M
89353 7143,7153,7324,7325,7154M 0
89354 7143,7153,7324,7325,7154M 0
89355 7143,7153,7324,7325,7154M 0
89356 7143,7153,7324,7325,7154M 0
89430 7145M
89438 7146M
89550 7145M
89730 7145M
90093 7147M
90103 7147M
90112 7147M
91293 7145M