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 = 7184 
WHERE 
  cscart_products_categories.product_id IN (
    98356, 98357, 98358, 98359, 98360, 98361, 
    98362, 98363, 98364, 98365, 98366, 
    98367, 98368, 98369, 98370, 98371, 
    98372, 98373, 98374, 98375, 98376, 
    98377, 98378, 98379, 98380, 98381, 
    98382, 98383, 98384, 98385, 98386, 
    98387, 98388, 98389, 98390, 98391, 
    98392, 98393, 98394, 98395, 98396, 
    98397, 98398, 98399, 98400, 98401, 
    98402, 98403, 98404, 98405, 98406, 
    98411, 98412, 98413, 98417, 98418, 
    98419, 98420, 98421, 98422, 98423, 
    98424, 98425, 98426, 98427, 98428, 
    98429, 98430, 98431, 98432, 98433, 
    98434, 98435, 98436, 98437, 98438, 
    98439, 98440, 98441, 98442, 98443, 
    98444, 98446, 98447, 98448, 98449, 
    98450, 98451, 98452, 98453, 98454, 
    98455, 98456, 98476, 98477, 98478
  ) 
GROUP BY 
  cscart_products_categories.product_id

Query time 0.01753

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "133.98"
    },
    "grouping_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "9.06"
      },
      "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": 9,
            "filtered": "0.93",
            "cost_info": {
              "read_cost": "2.33",
              "eval_cost": "0.91",
              "prefix_cost": "121.75",
              "data_read_per_join": "144"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "link_type"
            ],
            "attached_condition": "(`nuie_scalesta_net`.`cscart_products_categories`.`product_id` in (98356,98357,98358,98359,98360,98361,98362,98363,98364,98365,98366,98367,98368,98369,98370,98371,98372,98373,98374,98375,98376,98377,98378,98379,98380,98381,98382,98383,98384,98385,98386,98387,98388,98389,98390,98391,98392,98393,98394,98395,98396,98397,98398,98399,98400,98401,98402,98403,98404,98405,98406,98411,98412,98413,98417,98418,98419,98420,98421,98422,98423,98424,98425,98426,98427,98428,98429,98430,98431,98432,98433,98434,98435,98436,98437,98438,98439,98440,98441,98442,98443,98444,98446,98447,98448,98449,98450,98451,98452,98453,98454,98455,98456,98476,98477,98478))"
          }
        },
        {
          "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": 9,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.26",
              "eval_cost": "0.91",
              "prefix_cost": "124.92",
              "data_read_per_join": "144"
            },
            "used_columns": [
              "product_id",
              "category_id",
              "position"
            ]
          }
        }
      ]
    }
  }
}

Result

product_id category_ids position
98356 7188M
98357 7188M
98358 7188M
98359 7188M
98360 7188M
98361 7188M
98362 7188M
98363 7188M
98364 7188M
98365 7188M
98366 7188M
98367 7185M
98368 7185M
98369 7185M
98370 7185M
98371 7185M
98372 7185M
98373 7185M
98374 7185M
98375 7185M
98376 7185M
98377 7185M
98378 7185M
98379 7185M
98380 7185M
98381 7185M
98382 7185M
98383 7186M
98384 7186M
98385 7186M
98386 7186M
98387 7186M
98388 7186M
98389 7186M
98390 7186M
98391 7157M,7341,7342,7343
98392 7157M,7341,7342,7343
98393 7157M,7341,7342,7343
98394 7157M,7341,7342,7343
98395 7157M,7341,7342,7343
98396 7157M,7341,7342,7343
98397 7157M,7341,7342,7343
98398 7157M,7341,7342,7343
98399 7157M,7341,7342,7343
98400 7157M,7341,7342,7343
98401 7157M,7341,7342,7343
98402 7157M,7341,7342,7343
98403 7157M,7341,7342,7343
98404 7157M,7341,7342,7343
98405 7157M,7341,7342,7343
98406 7157M,7341,7342,7343
98411 7157M,7341,7342,7343
98412 7157M,7341,7342,7343
98413 7157M,7341,7342,7343
98417 7186M
98418 7185M
98419 7186M
98420 7185M
98421 7219M,7313,7338
98422 7157M,7341,7342,7343
98423 7186M
98424 7219M,7313,7338
98425 7219M,7313,7338
98426 7219M,7313,7338
98427 7157M,7341,7342,7343
98428 7219M,7313,7338
98429 7157M,7341,7342,7343
98430 7186M
98431 7186M
98432 7219M,7313,7338
98433 7157M,7341,7342,7343
98434 7219M,7313,7338
98435 7157M,7341,7342,7343
98436 7219M,7313,7338
98437 7219M,7313,7338
98438 7219M,7313,7338
98439 7157M,7341,7342,7343
98440 7157M,7341,7342,7343
98441 7157M,7341,7342,7343
98442 7219M,7313,7338
98443 7157M,7341,7342,7343
98444 7186M
98446 7219M,7313,7338
98447 7157M,7341,7342,7343
98448 7186M
98449 7219M,7313,7338
98450 7219M,7313,7338
98451 7157M,7341,7342,7343
98452 7219M,7313,7338
98453 7157M,7341,7342,7343
98454 7186M
98455 7219M,7313,7338
98456 7157M,7341,7342,7343
98476 7157M,7341,7342,7343
98477 7157M,7341,7342,7343
98478 7157M,7341,7342,7343