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 = 266 
WHERE 
  cscart_products_categories.product_id IN (
    338, 331, 6705, 3932, 3134, 3116, 3126, 
    6673, 6679, 6691, 3155, 3131, 310, 303, 
    3939, 317, 3132, 3143, 3130, 3129, 3121, 
    3128, 6681, 6695, 3098, 3115, 6690, 
    6700, 12, 13, 14, 15, 16, 17, 18, 65, 66, 
    67, 68, 69, 70, 71, 119, 120, 121, 122, 
    123, 124, 125, 126, 127, 128, 129, 130, 
    131, 132, 233, 234, 235, 236, 237, 238, 
    239, 286, 287, 288, 289, 290, 291, 292, 
    3922, 3923, 3924, 3925, 3926, 3927, 
    3928, 3976, 3977, 3978, 3979, 3980, 
    3981, 3982, 4028, 4029, 4030, 4031, 
    4032, 4033, 4034, 4035, 4036, 4037, 
    4038, 4039
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00388

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "61.18"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "1.78"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "rows_examined_per_scan": 46,
            "rows_produced_per_join": 1,
            "filtered": "4.00",
            "cost_info": {
              "read_cost": "5.15",
              "eval_cost": "0.18",
              "prefix_cost": "5.33",
              "data_read_per_join": "7K"
            },
            "used_columns": [
              "category_id",
              "storefront_id",
              "usergroup_ids",
              "status"
            ],
            "attached_condition": "((`test2_gaseus`.`cscart_categories`.`storefront_id` in (0,1)) and ((`test2_gaseus`.`cscart_categories`.`usergroup_ids` = '') or (0 <> find_in_set(0,`test2_gaseus`.`cscart_categories`.`usergroup_ids`)) or (0 <> find_in_set(1,`test2_gaseus`.`cscart_categories`.`usergroup_ids`))) and (`test2_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": [
              "test2_gaseus.cscart_categories.category_id"
            ],
            "rows_examined_per_scan": 83,
            "rows_produced_per_join": 1,
            "filtered": "1.16",
            "index_condition": "(`test2_gaseus`.`cscart_products_categories`.`product_id` in (338,331,6705,3932,3134,3116,3126,6673,6679,6691,3155,3131,310,303,3939,317,3132,3143,3130,3129,3121,3128,6681,6695,3098,3115,6690,6700,12,13,14,15,16,17,18,65,66,67,68,69,70,71,119,120,121,122,123,124,125,126,127,128,129,130,131,132,233,234,235,236,237,238,239,286,287,288,289,290,291,292,3922,3923,3924,3925,3926,3927,3928,3976,3977,3978,3979,3980,3981,3982,4028,4029,4030,4031,4032,4033,4034,4035,4036,4037,4038,4039))",
            "cost_info": {
              "read_cost": "38.18",
              "eval_cost": "0.18",
              "prefix_cost": "58.78",
              "data_read_per_join": "28"
            },
            "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",
              "test2_gaseus.cscart_products_categories.product_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 1,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "0.44",
              "eval_cost": "0.18",
              "prefix_cost": "59.40",
              "data_read_per_join": "28"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
12 273M
13 273M
14 273M
15 273M
16 273M
17 273M
18 273M
65 273M
66 273M
67 273M
68 273M
69 273M
70 273M
71 273M
119 273M
120 273M
121 273M
122 273M
123 273M
124 273M
125 273M
126 273M
127 273M
128 273M
129 273M
130 273M
131 273M
132 273M
233 273M
234 273M
235 273M
236 273M
237 273M
238 273M
239 273M
286 273M
287 273M
288 273M
289 273M
290 273M
291 273M
292 273M
303 273M
310 273M
317 273M
331 273M
338 273M
3098 273M
3115 273M
3116 273M
3121 273M
3126 273M
3128 273M
3129 273M
3130 273M
3131 273M
3132 273M
3134 273M
3143 273M
3155 273M
3922 273M
3923 273M
3924 273M
3925 273M
3926 273M
3927 273M
3928 273M
3932 273M
3939 273M
3976 273M
3977 273M
3978 273M
3979 273M
3980 273M
3981 273M
3982 273M
4028 273M
4029 273M
4030 273M
4031 273M
4032 273M
4033 273M
4034 273M
4035 273M
4036 273M
4037 273M
4038 273M
4039 273M
6673 273M
6679 273M
6681 273M
6690 273M
6691 273M
6695 273M
6700 273M
6705 273M