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 = 7165 
WHERE 
  cscart_products_categories.product_id IN (
    95352, 95353, 95354, 95355, 95356, 95357, 
    95358, 95359, 95450, 95451, 95452, 
    95453, 95454, 95455, 95456, 95457, 
    95458, 95459, 95460, 95461, 95462, 
    95463, 95464, 95465, 95466, 95467, 
    95468, 95469, 95470, 95471, 95472, 
    95473, 95474, 95475, 95476, 95477, 
    95478, 95479, 95480, 95481, 95482, 
    95483, 95484, 95485, 95486, 95487, 
    95494, 95495
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00144

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "43.48"
    },
    "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": 48,
            "rows_produced_per_join": 48,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "5.08",
              "eval_cost": "4.80",
              "prefix_cost": "9.88",
              "data_read_per_join": "768"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (95352,95353,95354,95355,95356,95357,95358,95359,95450,95451,95452,95453,95454,95455,95456,95457,95458,95459,95460,95461,95462,95463,95464,95465,95466,95467,95468,95469,95470,95471,95472,95473,95474,95475,95476,95477,95478,95479,95480,95481,95482,95483,95484,95485,95486,95487,95494,95495))"
          }
        },
        {
          "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": 48,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "12.00",
              "eval_cost": "4.80",
              "prefix_cost": "26.68",
              "data_read_per_join": "768"
            },
            "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": "12.00",
              "eval_cost": "0.24",
              "prefix_cost": "43.48",
              "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
95352 7176M
95353 7174M
95354 7174M
95355 7174M
95356 7173M
95357 7173M
95358 7176M
95359 7176M
95450 7172M
95451 7175M
95452 7176M
95453 7177M
95454 7177M
95455 7177M
95456 7179M
95457 7179M
95458 7179M
95459 7172M
95460 7168M
95461 7177M
95462 7177M
95463 7172M
95464 7177M
95465 7177M
95466 7177M
95467 7179M
95468 7179M
95469 7179M
95470 7179M
95471 7179M
95472 7168M
95473 7173M
95474 7173M
95475 7168M
95476 7173M
95477 7173M
95478 7168M
95479 7173M
95480 7173M
95481 7168M
95482 7173M
95483 7173M
95484 7178M
95485 7177M
95486 7177M
95487 7177M
95494 7177M
95495 7177M