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 (
    2416, 2417, 2418, 2419, 2420, 2514, 2515, 
    2516, 2517, 2518, 2604, 2605, 2606, 
    2607, 3840, 3841, 3842, 3843, 5867, 
    5868, 5869, 5870, 5871, 5935, 5936, 
    5937, 5938, 5939, 6012, 6013, 6014, 
    6015, 6016, 6017, 6018, 6019, 6020, 
    6196, 6197, 6198, 6199, 6200, 6732, 
    2836, 2837, 2838, 2839, 2840
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00104

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "70.89"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "8.16"
      },
      "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": "range",
            "possible_keys": [
              "PRIMARY",
              "pt"
            ],
            "key": "pt",
            "used_key_parts": [
              "product_id"
            ],
            "key_length": "3",
            "rows_examined_per_scan": 51,
            "rows_produced_per_join": 8,
            "filtered": "10.00",
            "index_condition": "(`gaseus`.`cscart_products_categories`.`product_id` in (2416,2417,2418,2419,2420,2514,2515,2516,2517,2518,2604,2605,2606,2607,3840,3841,3842,3843,5867,5868,5869,5870,5871,5935,5936,5937,5938,5939,6012,6013,6014,6015,6016,6017,6018,6019,6020,6196,6197,6198,6199,6200,6732,2836,2837,2838,2839,2840))",
            "using_join_buffer": "hash join",
            "cost_info": {
              "read_cost": "47.78",
              "eval_cost": "0.82",
              "prefix_cost": "60.64",
              "data_read_per_join": "130"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`gaseus`.`cscart_products_categories`.`category_id` = `gaseus`.`cscart_categories`.`category_id`)"
          }
        },
        {
          "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": 8,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "1.28",
              "eval_cost": "0.82",
              "prefix_cost": "62.73",
              "data_read_per_join": "130"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
2416 308M
2417 308M
2418 308M
2419 308M
2420 308M
2514 308M
2515 308M
2516 308M
2517 308M
2518 308M
2604 308M
2605 308M
2606 308M
2607 308M
2836 308M
2837 308M
2838 308M
2839 308M
2840 308M
3840 308M
3841 308M
3842 308M
3843 308M
5867 308M
5868 308M
5869 308M
5870 308M
5871 308M
5935 308M
5936 308M
5937 308M
5938 308M
5939 308M
6012 308M
6013 308M
6014 308M
6015 308M
6016 308M
6017 308M
6018 308M
6019 308M
6020 308M
6196 308M
6197 308M
6198 308M
6199 308M
6200 308M
6732 308M