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 = 7166 
WHERE 
  cscart_products_categories.product_id IN (
    100927, 100930, 100931, 100932, 100933, 
    100934, 100935, 100936, 100937, 100938, 
    100939, 100940, 100941, 100942, 100943, 
    100946, 100947, 100949, 100950, 100951, 
    100952, 100953, 100954, 100955, 100956, 
    100957, 100958, 100959, 100960, 100961, 
    100962, 100963, 100964, 100965, 100966, 
    100967, 100968, 100969, 100970, 100971, 
    100972, 100973, 100974, 100975, 100976, 
    100977, 100978, 100982, 100983, 100984, 
    100985, 100986, 100987, 100988, 100989, 
    100990, 100991, 100992, 100993, 100994, 
    100995, 100996, 100997, 100998, 100999, 
    101000, 101001, 101002, 101003, 101004, 
    101005, 101006, 101007, 101008, 101009, 
    101010, 101093, 101094, 101095, 101096, 
    101097, 101098, 101099, 101100, 101101, 
    101102, 101103, 101104, 101628, 101629, 
    101630, 101631, 101632, 101633, 101678, 
    101679
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00254

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "122.35"
    },
    "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": 215,
            "rows_produced_per_join": 215,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "21.84",
              "eval_cost": "21.50",
              "prefix_cost": "43.34",
              "data_read_per_join": "3K"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (100927,100930,100931,100932,100933,100934,100935,100936,100937,100938,100939,100940,100941,100942,100943,100946,100947,100949,100950,100951,100952,100953,100954,100955,100956,100957,100958,100959,100960,100961,100962,100963,100964,100965,100966,100967,100968,100969,100970,100971,100972,100973,100974,100975,100976,100977,100978,100982,100983,100984,100985,100986,100987,100988,100989,100990,100991,100992,100993,100994,100995,100996,100997,100998,100999,101000,101001,101002,101003,101004,101005,101006,101007,101008,101009,101010,101093,101094,101095,101096,101097,101098,101099,101100,101101,101102,101103,101104,101628,101629,101630,101631,101632,101633,101678,101679))"
          }
        },
        {
          "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": 10,
            "filtered": "5.00",
            "cost_info": {
              "read_cost": "53.75",
              "eval_cost": "1.08",
              "prefix_cost": "118.59",
              "data_read_per_join": "28K"
            },
            "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')))"
          }
        },
        {
          "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": 10,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.69",
              "eval_cost": "1.08",
              "prefix_cost": "122.35",
              "data_read_per_join": "172"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
100927 7319,7193M
100930 7319,7193M
100931 7319,7193M
100932 7319,7193M
100933 7319,7193M
100934 7319,7193M
100935 7319,7193M
100936 7319,7193M
100937 7319,7193M
100938 7319,7193M
100939 7319,7193M
100940 7319,7193M
100941 7319,7193M
100942 7319,7193M
100943 7319,7193M
100946 7319,7193M
100947 7319,7193M
100949 7319,7193M
100950 7319,7193M
100951 7319,7193M
100952 7319,7193M
100953 7319,7193M
100954 7319,7193M
100955 7319,7193M
100956 7319,7193M
100957 7319,7193M
100958 7319,7193M
100959 7319,7193M
100960 7319,7193M
100961 7319,7193M
100962 7319,7193M
100963 7319,7193M
100964 7319,7193M
100965 7319,7193M
100966 7319,7193M
100967 7319,7193M
100968 7319,7193M
100969 7319,7193M
100970 7319,7193M
100971 7183,7283,7167M
100972 7183,7283,7167M
100973 7183,7283,7167M
100974 7183,7283,7167M
100975 7183,7283,7167M
100976 7183,7283,7167M
100977 7183,7283,7167M
100978 7183,7283,7167M
100982 7183,7283,7167M
100983 7183,7283,7167M
100984 7183,7283,7167M
100985 7319,7193M
100986 7319,7193M
100987 7319,7193M
100988 7183,7283,7167M
100989 7319,7193M
100990 7319,7193M
100991 7319,7193M
100992 7319,7193M
100993 7319,7193M
100994 7319,7193M
100995 7319,7193M
100996 7319,7193M
100997 7319,7193M
100998 7319,7193M
100999 7319,7193M
101000 7319,7193M
101001 7319,7193M
101002 7319,7193M
101003 7319,7193M
101004 7319,7193M
101005 7319,7193M
101006 7319,7193M
101007 7319,7193M
101008 7319,7193M
101009 7319,7193M
101010 7319,7193M
101093 7319,7193M
101094 7319,7193M
101095 7319,7193M
101096 7319,7193M
101097 7319,7193M
101098 7319,7193M
101099 7319,7193M
101100 7319,7193M
101101 7319,7193M
101102 7183,7283,7167M
101103 7183,7283,7167M
101104 7183,7283,7167M
101628 7183,7283,7167M
101629 7183,7283,7167M
101630 7183,7283,7167M
101631 7183,7283,7167M
101632 7183,7283,7167M
101633 7183,7283,7167M
101678 7183,7283,7167M
101679 7183,7283,7167M