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 = 265 
WHERE 
  cscart_products_categories.product_id IN (
    3920, 3921, 3968, 3969, 3970, 3971, 3972, 
    3973, 3974, 4020, 4021, 4022, 4023, 
    4024, 4025, 4026, 4094, 4095, 4096, 
    4097, 4098, 4099, 4100, 4101, 4102, 
    4103, 4104, 4105, 4106, 4107, 4163, 
    4164, 4165, 4166, 4167, 4168, 4169, 
    4216, 4217, 4218, 4219, 4220, 4221, 
    4222, 196, 197, 198, 199
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00106

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "68.13"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "7.68"
      },
      "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": 48,
            "rows_produced_per_join": 7,
            "filtered": "10.00",
            "index_condition": "(`gaseus`.`cscart_products_categories`.`product_id` in (3920,3921,3968,3969,3970,3971,3972,3973,3974,4020,4021,4022,4023,4024,4025,4026,4094,4095,4096,4097,4098,4099,4100,4101,4102,4103,4104,4105,4106,4107,4163,4164,4165,4166,4167,4168,4169,4216,4217,4218,4219,4220,4221,4222,196,197,198,199))",
            "using_join_buffer": "hash join",
            "cost_info": {
              "read_cost": "46.10",
              "eval_cost": "0.77",
              "prefix_cost": "58.48",
              "data_read_per_join": "122"
            },
            "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": 7,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "1.20",
              "eval_cost": "0.77",
              "prefix_cost": "60.45",
              "data_read_per_join": "122"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
196 273M
197 273M
198 273M
199 273M
3920 273M
3921 273M
3968 273M
3969 273M
3970 273M
3971 273M
3972 273M
3973 273M
3974 273M
4020 273M
4021 273M
4022 273M
4023 273M
4024 273M
4025 273M
4026 273M
4094 273M
4095 273M
4096 273M
4097 273M
4098 273M
4099 273M
4100 273M
4101 273M
4102 273M
4103 273M
4104 273M
4105 273M
4106 273M
4107 273M
4163 273M
4164 273M
4165 273M
4166 273M
4167 273M
4168 273M
4169 273M
4216 273M
4217 273M
4218 273M
4219 273M
4220 273M
4221 273M
4222 273M