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 = 7340 
WHERE 
  cscart_products_categories.product_id IN (
    85560, 85569, 91876, 85545, 84237, 85548, 
    93283, 93285, 93287, 93289, 93291, 
    94452, 94453, 94454, 94455, 94456, 
    94458, 94459, 94460, 94461, 94462, 
    94751, 94752, 94753, 94754, 94755, 
    94756, 94757, 94758, 94762
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01542

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "108.30"
    },
    "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": 120,
            "rows_produced_per_join": 120,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "12.30",
              "eval_cost": "12.00",
              "prefix_cost": "24.30",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (85560,85569,91876,85545,84237,85548,93283,93285,93287,93289,93291,94452,94453,94454,94455,94456,94458,94459,94460,94461,94462,94751,94752,94753,94754,94755,94756,94757,94758,94762))"
          }
        },
        {
          "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": 120,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "30.00",
              "eval_cost": "12.00",
              "prefix_cost": "66.30",
              "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": 6,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "30.00",
              "eval_cost": "0.60",
              "prefix_cost": "108.30",
              "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
84237 7157M,7341,7342,7343
85545 7157M,7341,7342,7343
85548 7157M,7341,7342,7343
85560 7157M,7341,7342,7343
85569 7157M,7341,7342,7343
91876 7157M,7341,7342,7343
93283 7157M,7341,7342,7343
93285 7157M,7341,7342,7343
93287 7157M,7341,7342,7343
93289 7157M,7341,7342,7343
93291 7157M,7341,7342,7343
94452 7157M,7341,7342,7343
94453 7157M,7341,7342,7343
94454 7157M,7341,7342,7343
94455 7157M,7341,7342,7343
94456 7157M,7341,7342,7343
94458 7157M,7341,7342,7343
94459 7157M,7341,7342,7343
94460 7157M,7341,7342,7343
94461 7157M,7341,7342,7343
94462 7157M,7341,7342,7343
94751 7157M,7341,7342,7343
94752 7157M,7341,7342,7343
94753 7157M,7341,7342,7343
94754 7157M,7341,7342,7343
94755 7157M,7341,7342,7343
94756 7157M,7341,7342,7343
94757 7157M,7341,7342,7343
94758 7157M,7341,7342,7343
94762 7157M,7341,7342,7343