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 = 7156 
WHERE 
  cscart_products_categories.product_id IN (
    92196, 92204, 92205, 92206, 92207, 92208, 
    92209, 92442, 92443, 92448, 92147, 
    92148, 92149, 92349, 92350, 92351, 
    92352, 86864, 85644, 85580, 86863, 
    92151, 92152, 92153, 92353, 92354, 
    92355, 92356, 91893, 91894
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01524

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "105.60"
    },
    "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": 117,
            "rows_produced_per_join": 117,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "12.00",
              "eval_cost": "11.70",
              "prefix_cost": "23.70",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (92196,92204,92205,92206,92207,92208,92209,92442,92443,92448,92147,92148,92149,92349,92350,92351,92352,86864,85644,85580,86863,92151,92152,92153,92353,92354,92355,92356,91893,91894))"
          }
        },
        {
          "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": 117,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "29.25",
              "eval_cost": "11.70",
              "prefix_cost": "64.65",
              "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": 5,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "29.25",
              "eval_cost": "0.59",
              "prefix_cost": "105.60",
              "data_read_per_join": "15K"
            },
            "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
85580 7157M,7341,7342,7343
85644 7148,7156,7157M 0
86863 7148,7156,7157M 0
86864 7148,7156,7157M 0
91893 7157M,7341,7342,7343
91894 7157M,7341,7342,7343
92147 7157M,7341,7342,7343
92148 7157M,7341,7342,7343
92149 7157M,7341,7342,7343
92151 7157M,7341,7342,7343
92152 7157M,7341,7342,7343
92153 7157M,7341,7342,7343
92196 7157M,7341,7342,7343
92204 7157M,7341,7342,7343
92205 7157M,7341,7342,7343
92206 7157M,7341,7342,7343
92207 7157M,7341,7342,7343
92208 7157M,7341,7342,7343
92209 7157M,7341,7342,7343
92349 7157M,7341,7342,7343
92350 7157M,7341,7342,7343
92351 7157M,7341,7342,7343
92352 7157M,7341,7342,7343
92353 7157M,7341,7342,7343
92354 7157M,7341,7342,7343
92355 7157M,7341,7342,7343
92356 7157M,7341,7342,7343
92442 7157M,7341,7342,7343
92443 7157M,7341,7342,7343
92448 7157M,7341,7342,7343