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 = 271 
WHERE 
  cscart_products_categories.product_id IN (
    5390, 5391, 5392, 5393, 5394, 5395, 5396, 
    5397, 5398, 5399, 5400, 5401, 5402, 
    5403, 5404, 5405, 5406, 5407, 5408, 
    5409, 5410, 5411, 5412, 5413, 5414, 
    6728, 515, 3156, 3676, 5131, 3834, 3833, 
    2130, 2131, 2132, 2133, 2134, 2135, 
    2136, 2137, 2138, 2139, 2140, 2141, 
    2142, 2143, 2144, 2145, 2146, 2147, 
    2148, 2149, 2150, 2151, 2152, 2153, 
    2154, 2155, 2156, 2157, 2158, 2159, 
    2160, 2161, 2162, 2163, 2164, 2165, 
    2166, 2167, 2168, 2169, 2170, 2171, 
    2172, 2173, 2174, 2175, 2176, 2177, 
    2178, 2179, 2180, 2181, 2182, 2183, 
    2184, 3779, 3780, 3781, 3782, 3783, 
    3784, 3785, 3786, 3787
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00284

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "68.41"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "1.57"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "rows_examined_per_scan": 40,
            "rows_produced_per_join": 1,
            "filtered": "4.00",
            "cost_info": {
              "read_cost": "4.54",
              "eval_cost": "0.16",
              "prefix_cost": "4.70",
              "data_read_per_join": "6K"
            },
            "used_columns": [
              "category_id",
              "storefront_id",
              "usergroup_ids",
              "status"
            ],
            "attached_condition": "((`gaseus`.`cscart_categories`.`storefront_id` in (0,1)) and ((`gaseus`.`cscart_categories`.`usergroup_ids` = '') or (0 <> find_in_set(0,`gaseus`.`cscart_categories`.`usergroup_ids`)) or (0 <> find_in_set(1,`gaseus`.`cscart_categories`.`usergroup_ids`))) and (`gaseus`.`cscart_categories`.`status` in ('A','H')))"
          }
        },
        {
          "table": {
            "table_name": "cscart_products_categories",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY",
              "pt"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "gaseus.cscart_categories.category_id"
            ],
            "rows_examined_per_scan": 110,
            "rows_produced_per_join": 1,
            "filtered": "0.89",
            "index_condition": "(`gaseus`.`cscart_products_categories`.`product_id` in (5390,5391,5392,5393,5394,5395,5396,5397,5398,5399,5400,5401,5402,5403,5404,5405,5406,5407,5408,5409,5410,5411,5412,5413,5414,6728,515,3156,3676,5131,3834,3833,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,3779,3780,3781,3782,3783,3784,3785,3786,3787))",
            "cost_info": {
              "read_cost": "44.00",
              "eval_cost": "0.16",
              "prefix_cost": "66.30",
              "data_read_per_join": "25"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ]
          }
        },
        {
          "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",
              "gaseus.cscart_products_categories.product_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 1,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "0.39",
              "eval_cost": "0.16",
              "prefix_cost": "66.85",
              "data_read_per_join": "25"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
515 308M
2130 274M
2131 274M
2132 274M
2133 274M
2134 274M
2135 274M
2136 274M
2137 274M
2138 274M
2139 274M
2140 274M
2141 274M
2142 274M
2143 274M
2144 274M
2145 274M
2146 274M
2147 274M
2148 274M
2149 274M
2150 274M
2151 274M
2152 274M
2153 274M
2154 274M
2155 274M
2156 274M
2157 274M
2158 274M
2159 274M
2160 274M
2161 274M
2162 274M
2163 274M
2164 274M
2165 274M
2166 274M
2167 274M
2168 274M
2169 274M
2170 274M
2171 274M
2172 274M
2173 274M
2174 274M
2175 274M
2176 274M
2177 274M
2178 274M
2179 274M
2180 274M
2181 274M
2182 274M
2183 274M
2184 274M
3156 308M
3676 308M
3779 274M
3780 274M
3781 274M
3782 274M
3783 274M
3784 274M
3785 274M
3786 274M
3787 274M
3833 274M
3834 274M
5131 308M
5390 308M
5391 308M
5392 308M
5393 308M
5394 308M
5395 308M
5396 308M
5397 308M
5398 308M
5399 308M
5400 308M
5401 308M
5402 308M
5403 308M
5404 308M
5405 308M
5406 308M
5407 308M
5408 308M
5409 308M
5410 308M
5411 308M
5412 308M
5413 308M
5414 308M
6728 308M