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 = 7195 
WHERE 
  cscart_products_categories.product_id IN (
    94963, 94964, 95360, 95394, 95395, 95396, 
    95397, 95398, 95399, 95400, 95401, 
    95424, 95425, 95426, 95427, 95428, 
    95429, 95430, 95431, 95432, 95433, 
    95434, 95435, 95436, 95437, 95438, 
    95439, 95440, 95441, 95488
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00137

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "37.17"
    },
    "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": 41,
            "rows_produced_per_join": 41,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "4.37",
              "eval_cost": "4.10",
              "prefix_cost": "8.47",
              "data_read_per_join": "656"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (94963,94964,95360,95394,95395,95396,95397,95398,95399,95400,95401,95424,95425,95426,95427,95428,95429,95430,95431,95432,95433,95434,95435,95436,95437,95438,95439,95440,95441,95488))"
          }
        },
        {
          "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": 41,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "10.25",
              "eval_cost": "4.10",
              "prefix_cost": "22.82",
              "data_read_per_join": "656"
            },
            "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": "10.25",
              "eval_cost": "0.21",
              "prefix_cost": "37.17",
              "data_read_per_join": "5K"
            },
            "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
94963 7222M
94964 7222M
95360 7287M
95394 7222M
95395 7222M
95396 7222M
95397 7222M
95398 7222M
95399 7331,7253M
95400 7331,7253M
95401 7331,7253M
95424 7222M
95425 7222M
95426 7222M
95427 7222M
95428 7222M
95429 7222M
95430 7222M
95431 7222M
95432 7222M
95433 7222M
95434 7331,7253M
95435 7331,7253M
95436 7331,7253M
95437 7331,7253M
95438 7331,7253M
95439 7331,7253M
95440 7331,7253M
95441 7331,7253M
95488 7222M