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 (
    6688, 6689, 6694, 6702, 6706, 6708, 6726, 
    6725, 3103, 3097, 3113, 6687, 6699, 
    36, 37, 38, 39, 40, 41, 42, 83, 84, 85, 
    86, 87, 88, 89, 147, 148, 149, 150, 151, 
    152, 153, 168, 169, 170, 171, 172, 173, 
    174, 250, 251, 252, 253, 254, 255, 256
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00129

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "71.81"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "8.32"
      },
      "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": 52,
            "rows_produced_per_join": 8,
            "filtered": "10.00",
            "index_condition": "(`gaseus`.`cscart_products_categories`.`product_id` in (6688,6689,6694,6702,6706,6708,6726,6725,3103,3097,3113,6687,6699,36,37,38,39,40,41,42,83,84,85,86,87,88,89,147,148,149,150,151,152,153,168,169,170,171,172,173,174,250,251,252,253,254,255,256))",
            "using_join_buffer": "hash join",
            "cost_info": {
              "read_cost": "48.34",
              "eval_cost": "0.83",
              "prefix_cost": "61.36",
              "data_read_per_join": "133"
            },
            "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.30",
              "eval_cost": "0.83",
              "prefix_cost": "63.49",
              "data_read_per_join": "133"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
36 273M
37 273M
38 273M
39 273M
40 273M
41 273M
42 273M
83 273M
84 273M
85 273M
86 273M
87 273M
88 273M
89 273M
147 273M
148 273M
149 273M
150 273M
151 273M
152 273M
153 273M
168 273M
169 273M
170 273M
171 273M
172 273M
173 273M
174 273M
250 273M
251 273M
252 273M
253 273M
254 273M
255 273M
256 273M
3097 273M
3103 273M
3113 273M
6687 273M
6688 273M
6689 273M
6694 273M
6699 273M
6702 273M
6706 273M
6708 273M
6725 273M
6726 273M