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 = 280 
WHERE 
  cscart_products_categories.product_id IN (
    12684, 12714, 13260, 13267, 12349, 12364, 
    12259, 12504, 12524, 12379, 6843, 6840, 
    6841, 6846, 13274, 13286, 13280, 13292, 
    6962, 6966, 6967, 6965, 6963, 6952, 
    6953, 3484, 3487, 3485, 3486, 6969, 
    3434, 6947, 3424, 3911, 3422, 3910, 
    3421, 3909, 3420, 3423, 3912, 3430, 
    3429, 3437, 3436, 3438, 6959, 3425, 
    6958, 6960, 6968, 6961, 6964, 6957, 
    6956, 6954, 6955, 6948, 3914, 3913, 
    6950, 6949, 3477, 3452, 3478, 3479, 
    3453, 3491, 3488, 3497, 3495, 3489, 
    3492, 3496, 3490, 3494, 6951, 3502, 
    3503, 3493, 3498, 3428, 3433, 3432, 
    12594, 12609, 12424, 12554, 12536, 
    12546, 13127, 12464, 12624, 12654, 
    13148, 13153
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00317

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "63.80"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "3.72"
      },
      "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": 3,
            "filtered": "2.44",
            "index_condition": "(`test2_gaseus`.`cscart_products_categories`.`product_id` in (12684,12714,13260,13267,12349,12364,12259,12504,12524,12379,6843,6840,6841,6846,13274,13286,13280,13292,6962,6966,6967,6965,6963,6952,6953,3484,3487,3485,3486,6969,3434,6947,3424,3911,3422,3910,3421,3909,3420,3423,3912,3430,3429,3437,3436,3438,6959,3425,6958,6960,6968,6961,6964,6957,6956,6954,6955,6948,3914,3913,6950,6949,3477,3452,3478,3479,3453,3491,3488,3497,3495,3489,3492,3496,3490,3494,6951,3502,3503,3493,3498,3428,3433,3432,12594,12609,12424,12554,12536,12546,13127,12464,12624,12654,13148,13153))",
            "cost_info": {
              "read_cost": "38.18",
              "eval_cost": "0.37",
              "prefix_cost": "58.78",
              "data_read_per_join": "59"
            },
            "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": 3,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "0.93",
              "eval_cost": "0.37",
              "prefix_cost": "60.09",
              "data_read_per_join": "59"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
3420 292M
3421 292M
3422 292M
3423 292M
3424 292M
3425 282,267,284M,312
3428 287,272,286M
3429 273,288M,286
3430 273,288M,286
3432 300M
3433 305M
3434 303M
3436 273,288M,286
3437 273,288M,286
3438 273,288M,286
3452 287,272,286M
3453 287,272,286M
3477 287,272,286M
3478 287,272,286M
3479 287,272,286M
3484 302M
3485 302M
3486 302M
3487 302M
3488 287,272,286M
3489 287,272,286M
3490 287,272,286M
3491 287,272,286M
3492 287,272,286M
3493 287,272,286M
3494 287,272,286M
3495 287,272,286M
3496 287,272,286M
3497 287,272,286M
3498 287,272,286M
3502 287,272,286M
3503 287,272,286M
3909 292M
3910 292M
3911 292M
3912 292M
3913 304M
3914 304M
6840 287M
6841 287M
6843 287M
6846 287M
6947 292M,282,267
6948 282,272M,267
6949 282,272M,267
6950 282,272M,267
6951 287,272,286M
6952 282,267,301M
6953 282,267,301M
6954 282,267,301M
6955 282,267,301M
6956 282,267,301M
6957 282,267,301M
6958 282,267,284M,312
6959 282,267,284M,312
6960 282,267,284M,312
6961 283,282M,267
6962 283,282M,267
6963 283,282M,267
6964 283,282M,267
6965 283,282M,267
6966 283,282M,267
6967 283,282M,267
6968 283M,282,267
6969 303M
12259 306M
12349 306M
12364 306M
12379 318M
12424 319M
12464 284M
12504 306M
12524 306M
12536 319M
12546 319M
12554 319M
12594 319M
12609 319M
12624 284M
12654 284M
12684 283M
12714 283M
13127 284M
13148 284M
13153 284M
13260 283M
13267 283M
13274 288M
13280 288M
13286 288M
13292 288M