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 = 433 
WHERE 
  cscart_products_categories.product_id IN (
    1893, 47593, 47631, 33312, 65, 43825, 
    47656, 48998, 2292, 47654, 47984, 40761, 
    3471, 47660, 1781, 1755, 3620, 35254, 
    47598, 47599, 6367, 35188, 35859, 1784, 
    40760, 5998, 2233, 4465, 4362, 1756, 
    28157, 6543
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00965

JSON explain

{
  "query_block": {
    "select_id": 1,
    "nested_loop": [
      {
        "table": {
          "table_name": "cscart_products_categories",
          "access_type": "range",
          "possible_keys": ["PRIMARY", "pt"],
          "key": "pt",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "rows": 94,
          "filtered": 100,
          "index_condition": "cscart_products_categories.product_id in (1893,47593,47631,33312,65,43825,47656,48998,2292,47654,47984,40761,3471,47660,1781,1755,3620,35254,47598,47599,6367,35188,35859,1784,40760,5998,2233,4465,4362,1756,28157,6543)"
        }
      },
      {
        "table": {
          "table_name": "cscart_categories",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "c_status", "p_category_id"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["category_id"],
          "ref": ["dev_db.cscart_products_categories.category_id"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "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')"
        }
      },
      {
        "table": {
          "table_name": "product_position_source",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "pt"],
          "key": "PRIMARY",
          "key_length": "6",
          "used_key_parts": ["category_id", "product_id"],
          "ref": ["const", "dev_db.cscart_products_categories.product_id"],
          "rows": 1,
          "filtered": 100
        }
      }
    ]
  }
}

Result

product_id category_ids position
65 412,119,118M
1755 183M
1756 183M
1781 313M
1784 313M
1893 212,315,316,210,409,196M
2233 315,212,197M
2292 166M
3471 313M
3620 142M
4362 191M
4465 191M
5998 409,166M
6367 119,412M
6543 211,212,412,119M
28157 412,119M
33312 119,412
35188 409,154M
35254 409,154M
35859 313,191M
40760 118M
40761 315,119,412,118M
43825 122M
47593 210,212,166M
47598 210,212,409,166M
47599 210,212,409,166M
47631 210,212,409,166M
47654 110,119,412,213M
47656 110,315,119,412,213M
47660 412,119M
47984 212,110,213,315,313M
48998 409,158M