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 = 7340 
WHERE 
  cscart_products_categories.product_id IN (
    100722, 100723, 100724, 100725, 100726, 
    100727, 100728, 100729, 100730, 100731, 
    100732, 100733, 100734, 100735, 100736, 
    100737, 100738, 100739, 100740, 100741, 
    100742, 100743, 100744, 100745, 100746, 
    100747, 100748, 100749, 100750, 100751, 
    100752, 100753, 100754, 100755, 100756, 
    100757, 100758, 100759, 100760, 100761, 
    100762, 100763, 100764, 100765, 100766, 
    100767, 100768, 100769, 100770, 100771, 
    100772, 100773, 100774, 100775, 100776, 
    100777, 100778, 100779, 100780, 100781, 
    100782, 100783, 100784, 100785, 100786, 
    100787, 100788, 100841, 100842, 100843, 
    100844, 100845, 100846, 100847, 100848, 
    100856
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.00679

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "137.70"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "11.82"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "c_status",
              "p_category_id"
            ],
            "rows_examined_per_scan": 208,
            "rows_produced_per_join": 8,
            "filtered": "4.00",
            "cost_info": {
              "read_cost": "20.72",
              "eval_cost": "0.83",
              "prefix_cost": "21.55",
              "data_read_per_join": "21K"
            },
            "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": "cscart_products_categories",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY",
              "link_type",
              "pt"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_id"
            ],
            "key_length": "3",
            "ref": [
              "nuie_scalesta_net.cscart_categories.category_id"
            ],
            "rows_examined_per_scan": 117,
            "rows_produced_per_join": 11,
            "filtered": "1.21",
            "cost_info": {
              "read_cost": "2.33",
              "eval_cost": "1.18",
              "prefix_cost": "121.75",
              "data_read_per_join": "189"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (100722,100723,100724,100725,100726,100727,100728,100729,100730,100731,100732,100733,100734,100735,100736,100737,100738,100739,100740,100741,100742,100743,100744,100745,100746,100747,100748,100749,100750,100751,100752,100753,100754,100755,100756,100757,100758,100759,100760,100761,100762,100763,100764,100765,100766,100767,100768,100769,100770,100771,100772,100773,100774,100775,100776,100777,100778,100779,100780,100781,100782,100783,100784,100785,100786,100787,100788,100841,100842,100843,100844,100845,100846,100847,100848,100856))"
          }
        },
        {
          "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": 11,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.95",
              "eval_cost": "1.18",
              "prefix_cost": "125.88",
              "data_read_per_join": "189"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
100722 7157M,7341,7342,7343
100723 7157M,7341,7342,7343
100724 7157M,7341,7342,7343
100725 7157M,7341,7342,7343
100726 7157M,7341,7342,7343
100727 7157M,7341,7342,7343
100728 7157M,7341,7342,7343
100729 7157M,7341,7342,7343
100730 7157M,7341,7342,7343
100731 7157M,7341,7342,7343
100732 7157M,7341,7342,7343
100733 7157M,7341,7342,7343
100734 7157M,7341,7342,7343
100735 7157M,7341,7342,7343
100736 7157M,7341,7342,7343
100737 7157M,7341,7342,7343
100738 7157M,7341,7342,7343
100739 7157M,7341,7342,7343
100740 7157M,7341,7342,7343
100741 7157M,7341,7342,7343
100742 7157M,7341,7342,7343
100743 7157M,7341,7342,7343
100744 7157M,7341,7342,7343
100745 7157M,7341,7342,7343
100746 7157M,7341,7342,7343
100747 7157M,7341,7342,7343
100748 7157M,7341,7342,7343
100749 7157M,7341,7342,7343
100750 7157M,7341,7342,7343
100751 7157M,7341,7342,7343
100752 7157M,7341,7342,7343
100753 7157M,7341,7342,7343
100754 7157M,7341,7342,7343
100755 7157M,7341,7342,7343
100756 7157M,7341,7342,7343
100757 7157M,7341,7342,7343
100758 7157M,7341,7342,7343
100759 7157M,7341,7342,7343
100760 7157M,7341,7342,7343
100761 7157M,7341,7342,7343
100762 7157M,7341,7342,7343
100763 7157M,7341,7342,7343
100764 7157M,7341,7342,7343
100765 7157M,7341,7342,7343
100766 7157M,7341,7342,7343
100767 7157M,7341,7342,7343
100768 7157M,7341,7342,7343
100769 7157M,7341,7342,7343
100770 7157M,7341,7342,7343
100771 7157M,7341,7342,7343
100772 7157M,7341,7342,7343
100773 7157M,7341,7342,7343
100774 7157M,7341,7342,7343
100775 7157M,7341,7342,7343
100776 7157M,7341,7342,7343
100777 7157M,7341,7342,7343
100778 7157M,7341,7342,7343
100779 7157M,7341,7342,7343
100780 7157M,7341,7342,7343
100781 7157M,7341,7342,7343
100782 7157M,7341,7342,7343
100783 7157M,7341,7342,7343
100784 7157M,7341,7342,7343
100785 7157M,7341,7342,7343
100786 7157M,7341,7342,7343
100787 7157M,7341,7342,7343
100788 7157M,7341,7342,7343
100841 7157M,7341,7342,7343
100842 7157M,7341,7342,7343
100843 7157M,7341,7342,7343
100844 7157M,7341,7342,7343
100845 7157M,7341,7342,7343
100846 7157M,7341,7342,7343
100847 7157M,7341,7342,7343
100848 7157M,7341,7342,7343
100856 7157M,7341,7342,7343