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 = 7197 
WHERE 
  cscart_products_categories.product_id IN (
    97482, 97483, 97484, 97485, 97486, 97487, 
    97488, 97489, 97490, 97491, 97492, 
    97493, 97494, 97495, 97496, 97497, 
    97498, 97499, 97500, 97501, 97502, 
    97503, 97504, 97505, 97525, 97526, 
    97527, 97528, 97529, 97530, 97531, 
    97532, 97533, 97628, 98036, 98037, 
    98038, 98229, 98230, 98231, 98232, 
    98233, 98324, 98325, 98326, 98414, 
    98415, 98416, 98502, 98882, 98883, 
    98884, 98885, 99068, 99069, 99070, 
    99071, 99072, 99073, 99074, 99075, 
    99076, 99077, 99078, 99079, 99080, 
    99081, 99082, 99083, 99084, 99085, 
    99086, 99087, 99088, 99089, 99090, 
    99091, 99092, 99093, 99094, 99095, 
    99096, 99097, 99098, 99099, 99100, 
    99101, 99102, 99103, 99104, 99105, 
    99106, 99107, 99108, 99109, 99114
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01605

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "91.20"
    },
    "grouping_operation": {
      "using_filesort": false,
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_products_categories",
            "access_type": "range",
            "possible_keys": [
              "PRIMARY",
              "link_type",
              "pt"
            ],
            "key": "pt",
            "used_key_parts": [
              "product_id"
            ],
            "key_length": "3",
            "rows_examined_per_scan": 101,
            "rows_produced_per_join": 101,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "10.40",
              "eval_cost": "10.10",
              "prefix_cost": "20.50",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (97482,97483,97484,97485,97486,97487,97488,97489,97490,97491,97492,97493,97494,97495,97496,97497,97498,97499,97500,97501,97502,97503,97504,97505,97525,97526,97527,97528,97529,97530,97531,97532,97533,97628,98036,98037,98038,98229,98230,98231,98232,98233,98324,98325,98326,98414,98415,98416,98502,98882,98883,98884,98885,99068,99069,99070,99071,99072,99073,99074,99075,99076,99077,99078,99079,99080,99081,99082,99083,99084,99085,99086,99087,99088,99089,99090,99091,99092,99093,99094,99095,99096,99097,99098,99099,99100,99101,99102,99103,99104,99105,99106,99107,99108,99109,99114))"
          }
        },
        {
          "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",
              "nuie_scalesta_net.cscart_products_categories.product_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 101,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "25.25",
              "eval_cost": "10.10",
              "prefix_cost": "55.85",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        },
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "nuie_scalesta_net.cscart_products_categories.category_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 5,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "25.25",
              "eval_cost": "0.51",
              "prefix_cost": "91.20",
              "data_read_per_join": "13K"
            },
            "used_columns": [
              "category_id",
              "usergroup_ids",
              "status",
              "storefront_id"
            ],
            "attached_condition": "((`nuie_scalesta_net`.`cscart_categories`.`storefront_id` in (0,1)) and ((`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids` = '') or (0 <> find_in_set(0,`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids`)) or (0 <> find_in_set(1,`nuie_scalesta_net`.`cscart_categories`.`usergroup_ids`))) and (`nuie_scalesta_net`.`cscart_categories`.`status` in ('A','H')))"
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
97482 7255M
97483 7255M
97484 7255M
97485 7255M
97486 7255M
97487 7255M
97488 7255M
97489 7255M
97490 7255M
97491 7255M
97492 7255M
97493 7255M
97494 7255M
97495 7255M
97496 7255M
97497 7255M
97498 7255M
97499 7255M
97500 7255M
97501 7255M
97502 7255M
97503 7255M
97504 7255M
97505 7255M
97525 7255M
97526 7255M
97527 7255M
97528 7255M
97529 7255M
97530 7255M
97531 7255M
97532 7255M
97533 7255M
97628 7264M
98036 7199M
98037 7199M
98038 7199M
98229 7199M
98230 7209M
98231 7209M
98232 7209M
98233 7199M
98324 7209M
98325 7199M
98326 7209M
98414 7216M
98415 7216M
98416 7203M
98502 7209M
98882 7199M
98883 7199M
98884 7199M
98885 7199M
99068 7255M
99069 7255M
99070 7255M
99071 7255M
99072 7255M
99073 7255M
99074 7255M
99075 7255M
99076 7255M
99077 7256M,7262
99078 7256M,7262
99079 7255M
99080 7255M
99081 7256M,7262
99082 7256M,7262
99083 7255M
99084 7255M
99085 7255M
99086 7255M
99087 7255M
99088 7255M
99089 7255M
99090 7255M
99091 7255M
99092 7255M
99093 7255M
99094 7255M
99095 7255M
99096 7255M
99097 7255M
99098 7255M
99099 7255M
99100 7255M
99101 7255M
99102 7255M
99103 7255M
99104 7255M
99105 7255M
99106 7255M
99107 7255M
99108 7255M
99109 7255M
99114 7256M,7262