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 = 7 
WHERE 
  cscart_products_categories.product_id IN (
    1451, 1183, 18, 17, 19, 1814, 1813, 1874, 
    1875, 974, 1574, 1575, 1812, 1811, 1507, 
    1853, 1856, 1918, 1919, 1862, 1861, 
    1857, 1883, 1860, 1859, 1854, 1923, 
    1858, 1922, 1855, 1920, 1469, 344, 1850, 
    1551, 284, 1885, 1628, 1625, 1475, 1276, 
    1312, 1303, 74, 1161, 75, 182, 161
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00195

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "cscart_products_categories",
      "access_type": "range",
      "possible_keys": ["PRIMARY", "pt"],
      "key": "pt",
      "key_length": "3",
      "used_key_parts": ["product_id"],
      "rows": 48,
      "filtered": 100,
      "index_condition": "cscart_products_categories.product_id in (1451,1183,18,17,19,1814,1813,1874,1875,974,1574,1575,1812,1811,1507,1853,1856,1918,1919,1862,1861,1857,1883,1860,1859,1854,1923,1858,1922,1855,1920,1469,344,1850,1551,284,1885,1628,1625,1475,1276,1312,1303,74,1161,75,182,161)"
    },
    "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": ["bacpvdev_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", "bacpvdev_db.cscart_products_categories.product_id"],
      "rows": 1,
      "filtered": 100
    }
  }
}

Result

product_id category_ids position
17 8M
18 8M
19 8M
74 20M
75 20M
161 21M
182 21M
284 8M
344 8M
974 8M
1161 20M
1183 8M
1276 8M
1303 21M
1312 21M
1451 8M
1469 8M
1475 8M
1507 8M
1551 8M
1574 8M
1575 8M
1625 43M
1628 43M
1811 8M
1812 8M
1813 8M
1814 8M
1850 8M
1853 8M
1854 8M
1855 8M
1856 8M
1857 8M
1858 8M
1859 8M
1860 8M
1861 8M
1862 8M
1874 8M
1875 8M
1883 8M
1885 43M
1918 8M
1919 8M
1920 8M
1922 8M
1923 8M