SELECT 
  SQL_CALC_FOUND_ROWS (
    CASE WHEN products.parent_product_id <> 0 THEN products.parent_product_id ELSE products.product_id END
  ) AS product_id, 
  descr1.product as product, 
  companies.company as company_name, 
  companies.ec_rfq_whatsapp_number, 
  companies.ec_rfq_bht, 
  companies.ec_rfq_phone_number, 
  companies.ec_rfq_bhf, 
  GROUP_CONCAT(
    products.product_id 
    ORDER BY 
      products.parent_product_id ASC, 
      products.product_id ASC
  ) AS product_ids, 
  GROUP_CONCAT(
    products.product_type 
    ORDER BY 
      products.parent_product_id ASC, 
      products.product_id ASC
  ) AS product_types, 
  GROUP_CONCAT(
    products.parent_product_id 
    ORDER BY 
      products.parent_product_id ASC, 
      products.product_id ASC
  ) AS parent_product_ids, 
  products.product_type, 
  products.parent_product_id, 
  cscart_ec_table_booking_system.booking_type as booking_type 
FROM 
  cscart_products as products 
  LEFT JOIN cscart_product_features_values as var_val_860 ON var_val_860.product_id = products.product_id 
  AND var_val_860.lang_code = 'en' 
  AND var_val_860.feature_id = 860 
  LEFT JOIN cscart_product_descriptions as descr1 ON descr1.product_id = products.product_id 
  AND descr1.lang_code = 'en' 
  LEFT JOIN cscart_product_prices as prices ON prices.product_id = products.product_id 
  AND prices.lower_limit = 1 
  LEFT JOIN cscart_companies AS companies ON companies.company_id = products.company_id 
  INNER JOIN cscart_products_categories as products_categories ON products_categories.product_id = products.product_id 
  INNER JOIN cscart_categories ON cscart_categories.category_id = products_categories.category_id 
  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') 
  AND cscart_categories.storefront_id IN (0, 1) 
  LEFT JOIN cscart_ec_table_booking_system ON cscart_ec_table_booking_system.product_id = products.product_id 
  LEFT JOIN cscart_product_popularity as popularity ON popularity.product_id = products.product_id 
WHERE 
  1 
  AND (
    var_val_860.variant_id IN (64545)
  ) 
  AND cscart_categories.category_id IN (
    2658, 
    10562, 
    10563, 
    2657, 
    2665, 
    2670, 
    2679, 
    2689, 
    2661, 
    2664, 
    2667, 
    2668, 
    2672, 
    2674, 
    2676, 
    2681, 
    2682, 
    2685, 
    2690, 
    2693, 
    2696, 
    2699, 
    2701, 
    2704, 
    2708, 
    2709, 
    2714, 
    2717, 
    2671, 
    2675, 
    2897, 
    3400, 
    3418, 
    2695, 
    2702, 
    2711, 
    2719, 
    2722, 
    2726, 
    2732, 
    2741, 
    2745, 
    2754, 
    2762, 
    2770, 
    2777, 
    2790, 
    2807, 
    2816, 
    2724, 
    2729, 
    2735, 
    2738, 
    2746, 
    2751, 
    2756, 
    2765, 
    2776, 
    2787, 
    2803, 
    2815, 
    2763, 
    2775, 
    2779, 
    10570, 
    10571, 
    10572, 
    10573, 
    10574, 
    10575, 
    2785, 
    2791, 
    2795, 
    2856, 
    2870, 
    2883, 
    2885, 
    2887, 
    2888, 
    2890, 
    2892, 
    2894, 
    2895, 
    2899, 
    2906, 
    2908, 
    2909, 
    9365, 
    9538, 
    9539, 
    9540, 
    9541, 
    2767, 
    2778, 
    2784, 
    2794, 
    2808, 
    2831, 
    2834, 
    2838, 
    2844, 
    2860, 
    2864, 
    2865, 
    8942, 
    2805, 
    2810, 
    2814, 
    2820, 
    2826, 
    2830, 
    2839, 
    2845, 
    2854, 
    8984, 
    9658, 
    9665, 
    9666, 
    9670, 
    2769, 
    2789, 
    2800, 
    2812, 
    2822, 
    2829, 
    2837, 
    2898, 
    2900, 
    2902, 
    2903, 
    2904, 
    2905, 
    2907, 
    2843, 
    2850, 
    2857, 
    2858, 
    2862, 
    2866, 
    2884, 
    2849, 
    2859, 
    2868, 
    2878, 
    8851, 
    9250, 
    9257, 
    9276, 
    9277, 
    9278, 
    9574, 
    9575, 
    9990, 
    9991
  ) 
  AND companies.status IN ('A') 
  AND products.company_id IN (
    1, 
    25, 
    34, 
    35, 
    36, 
    37, 
    38, 
    39, 
    40, 
    41, 
    42, 
    43, 
    44, 
    45, 
    46, 
    47, 
    48, 
    49, 
    50, 
    51, 
    52, 
    53, 
    54, 
    55, 
    56, 
    57, 
    58, 
    59, 
    60, 
    61, 
    62, 
    63, 
    64, 
    65, 
    66, 
    67, 
    68, 
    69, 
    70, 
    71, 
    72, 
    73, 
    74, 
    75, 
    76, 
    77, 
    78, 
    79, 
    81, 
    82, 
    83, 
    84, 
    85, 
    86, 
    87, 
    88, 
    89, 
    90, 
    91, 
    92, 
    93, 
    94, 
    95, 
    96, 
    97, 
    98, 
    99, 
    100, 
    101, 
    102, 
    103, 
    104, 
    105, 
    106, 
    108, 
    109, 
    110, 
    111, 
    122, 
    123, 
    124, 
    125, 
    126, 
    127, 
    128, 
    129, 
    130, 
    131, 
    132, 
    134, 
    135, 
    136, 
    137, 
    138, 
    139, 
    140, 
    141, 
    142, 
    143, 
    144, 
    145, 
    146, 
    148, 
    150, 
    152, 
    153, 
    154, 
    155, 
    156, 
    157, 
    158, 
    159, 
    160, 
    161, 
    162, 
    163, 
    164, 
    165, 
    166, 
    167, 
    168, 
    169, 
    170, 
    171, 
    172, 
    173, 
    174, 
    175, 
    176, 
    177, 
    178, 
    179, 
    180, 
    181, 
    182, 
    183, 
    184, 
    185, 
    186, 
    187, 
    188, 
    189, 
    190, 
    191, 
    192, 
    193, 
    194, 
    196, 
    197, 
    198, 
    199, 
    200, 
    202, 
    203, 
    204, 
    205, 
    206, 
    207, 
    208, 
    210, 
    211, 
    212, 
    213, 
    214, 
    215, 
    216, 
    217, 
    218, 
    219, 
    220, 
    221, 
    222, 
    223, 
    224, 
    225, 
    226, 
    227, 
    228, 
    229, 
    230, 
    231, 
    232, 
    233, 
    234, 
    235, 
    236, 
    237, 
    238, 
    239, 
    240, 
    241, 
    242, 
    243, 
    244, 
    245, 
    246, 
    247, 
    248, 
    249, 
    250, 
    251, 
    252, 
    253, 
    254, 
    255, 
    256, 
    257, 
    259, 
    260, 
    261, 
    262, 
    263, 
    264, 
    266, 
    268, 
    269, 
    271, 
    272, 
    273, 
    276, 
    277, 
    278, 
    279, 
    280, 
    281, 
    282, 
    284, 
    285, 
    286, 
    287, 
    288, 
    289, 
    290, 
    291, 
    292, 
    293, 
    294, 
    295, 
    296, 
    297, 
    298, 
    299, 
    300, 
    301, 
    302, 
    303, 
    304, 
    305, 
    306, 
    307, 
    308, 
    309, 
    310, 
    311, 
    312, 
    313, 
    314, 
    315, 
    316, 
    317, 
    318, 
    319, 
    321, 
    322, 
    323, 
    324, 
    325, 
    326, 
    327, 
    328, 
    329, 
    330, 
    331, 
    332, 
    333, 
    334, 
    335, 
    336, 
    337, 
    338, 
    339, 
    340, 
    341, 
    342, 
    343, 
    344, 
    345, 
    346, 
    347, 
    348, 
    349, 
    350, 
    351, 
    352, 
    353, 
    354, 
    355, 
    356, 
    357, 
    358, 
    359, 
    360, 
    361, 
    362, 
    363, 
    364, 
    365, 
    366, 
    367, 
    368, 
    369, 
    370, 
    371, 
    372, 
    373, 
    374, 
    377, 
    378, 
    379, 
    380, 
    381, 
    382, 
    383, 
    384, 
    385, 
    387, 
    388, 
    389, 
    391, 
    392, 
    393, 
    394, 
    395, 
    396, 
    397, 
    398, 
    400, 
    401, 
    402, 
    403, 
    404, 
    405, 
    406, 
    407, 
    408, 
    409, 
    410, 
    411, 
    414, 
    415, 
    416, 
    417, 
    418, 
    419, 
    420, 
    421, 
    422, 
    423, 
    424, 
    425, 
    426, 
    427, 
    428, 
    429, 
    430, 
    431, 
    432, 
    433, 
    434, 
    435, 
    436, 
    439, 
    440, 
    443, 
    445, 
    447, 
    448, 
    449, 
    450, 
    451, 
    452, 
    454, 
    455, 
    457, 
    458, 
    459, 
    460, 
    461, 
    462, 
    463, 
    465, 
    466, 
    467, 
    468, 
    469, 
    470, 
    471, 
    472, 
    473, 
    474, 
    476, 
    478, 
    479, 
    480, 
    481, 
    482, 
    483, 
    484, 
    485, 
    486, 
    487, 
    488, 
    489, 
    491, 
    492, 
    493, 
    494, 
    495, 
    496, 
    497, 
    498, 
    501, 
    503, 
    504, 
    505, 
    507, 
    508, 
    509, 
    510, 
    511, 
    512, 
    513, 
    514, 
    515, 
    516, 
    518, 
    519, 
    520, 
    522, 
    524, 
    525, 
    526, 
    527, 
    528, 
    531, 
    532, 
    533, 
    535, 
    537, 
    539, 
    540, 
    541, 
    542, 
    543, 
    545, 
    546, 
    547, 
    548, 
    549, 
    550, 
    551, 
    553, 
    554, 
    556, 
    557, 
    558, 
    559, 
    560, 
    561, 
    562, 
    563, 
    564, 
    566, 
    567, 
    568, 
    569, 
    575, 
    576, 
    577, 
    579, 
    580, 
    582, 
    583, 
    585, 
    586, 
    587, 
    588, 
    590, 
    591, 
    592, 
    593, 
    594, 
    595, 
    596, 
    597, 
    598, 
    600, 
    602, 
    603, 
    604, 
    606, 
    607, 
    609, 
    610, 
    611, 
    613, 
    618, 
    620, 
    621, 
    622, 
    623, 
    624, 
    625, 
    626, 
    627, 
    628, 
    629, 
    630, 
    631, 
    632, 
    633, 
    634, 
    635, 
    636, 
    637, 
    639, 
    641, 
    642, 
    643, 
    644, 
    646, 
    647, 
    649, 
    655, 
    660, 
    661, 
    662, 
    663, 
    665, 
    668, 
    669, 
    670, 
    671, 
    672, 
    673, 
    674, 
    675, 
    676, 
    678, 
    679, 
    680, 
    681, 
    682, 
    685, 
    686, 
    687, 
    688, 
    689, 
    690, 
    691, 
    692, 
    693, 
    694, 
    695, 
    696, 
    697, 
    707, 
    719, 
    0
  ) 
  AND products.company_id = 1 
  AND products.status IN ('A') 
  AND (
    products.usergroup_ids = '' 
    OR FIND_IN_SET(0, products.usergroup_ids) 
    OR FIND_IN_SET(1, products.usergroup_ids)
  ) 
  AND products.status IN ('A') 
  AND prices.usergroup_id IN (0, 0, 1) 
  AND products.company_id = 1 
GROUP BY 
  product_id 
ORDER BY 
  popularity.total desc, 
  products.product_id ASC

Query time 0.00727

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "1219.37"
    },
    "ordering_operation": {
      "using_filesort": true,
      "grouping_operation": {
        "using_temporary_table": true,
        "using_filesort": true,
        "buffer_result": {
          "using_temporary_table": true,
          "nested_loop": [
            {
              "table": {
                "table_name": "companies",
                "access_type": "const",
                "possible_keys": [
                  "PRIMARY"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "company_id"
                ],
                "key_length": "4",
                "ref": [
                  "const"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 1,
                "filtered": "100.00",
                "cost_info": {
                  "read_cost": "0.00",
                  "eval_cost": "0.20",
                  "prefix_cost": "0.00",
                  "data_read_per_join": "9K"
                },
                "used_columns": [
                  "company_id",
                  "status",
                  "company",
                  "ec_rfq_whatsapp_number",
                  "ec_rfq_phone_number",
                  "ec_rfq_bhf",
                  "ec_rfq_bht"
                ]
              }
            },
            {
              "table": {
                "table_name": "var_val_860",
                "access_type": "ref",
                "possible_keys": [
                  "PRIMARY",
                  "fl",
                  "variant_id",
                  "lang_code",
                  "product_id",
                  "fpl",
                  "idx_product_feature_variant_id"
                ],
                "key": "fl",
                "used_key_parts": [
                  "feature_id",
                  "lang_code",
                  "variant_id"
                ],
                "key_length": "12",
                "ref": [
                  "const",
                  "const",
                  "const"
                ],
                "rows_examined_per_scan": 722,
                "rows_produced_per_join": 722,
                "filtered": "100.00",
                "using_index": true,
                "cost_info": {
                  "read_cost": "66.55",
                  "eval_cost": "144.40",
                  "prefix_cost": "210.95",
                  "data_read_per_join": "558K"
                },
                "used_columns": [
                  "feature_id",
                  "product_id",
                  "variant_id",
                  "lang_code"
                ],
                "attached_condition": "(`webmarco`.`var_val_860`.`product_id` is not null)"
              }
            },
            {
              "table": {
                "table_name": "products_categories",
                "access_type": "ref",
                "possible_keys": [
                  "PRIMARY",
                  "pt"
                ],
                "key": "pt",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "webmarco.var_val_860.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 36,
                "filtered": "3.01",
                "using_index": true,
                "cost_info": {
                  "read_cost": "722.70",
                  "eval_cost": "7.22",
                  "prefix_cost": "1173.26",
                  "data_read_per_join": "577"
                },
                "used_columns": [
                  "product_id",
                  "category_id"
                ],
                "attached_condition": "(`webmarco`.`products_categories`.`category_id` in (2658,10562,10563,2657,2665,2670,2679,2689,2661,2664,2667,2668,2672,2674,2676,2681,2682,2685,2690,2693,2696,2699,2701,2704,2708,2709,2714,2717,2671,2675,2897,3400,3418,2695,2702,2711,2719,2722,2726,2732,2741,2745,2754,2762,2770,2777,2790,2807,2816,2724,2729,2735,2738,2746,2751,2756,2765,2776,2787,2803,2815,2763,2775,2779,10570,10571,10572,10573,10574,10575,2785,2791,2795,2856,2870,2883,2885,2887,2888,2890,2892,2894,2895,2899,2906,2908,2909,9365,9538,9539,9540,9541,2767,2778,2784,2794,2808,2831,2834,2838,2844,2860,2864,2865,8942,2805,2810,2814,2820,2826,2830,2839,2845,2854,8984,9658,9665,9666,9670,2769,2789,2800,2812,2822,2829,2837,2898,2900,2902,2903,2904,2905,2907,2843,2850,2857,2858,2862,2866,2884,2849,2859,2868,2878,8851,9250,9257,9276,9277,9278,9574,9575,9990,9991))"
              }
            },
            {
              "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": [
                  "webmarco.products_categories.category_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 1,
                "filtered": "5.00",
                "cost_info": {
                  "read_cost": "36.10",
                  "eval_cost": "0.36",
                  "prefix_cost": "1216.58",
                  "data_read_per_join": "10K"
                },
                "used_columns": [
                  "category_id",
                  "usergroup_ids",
                  "status",
                  "storefront_id"
                ],
                "attached_condition": "(((`webmarco`.`cscart_categories`.`usergroup_ids` = '') or find_in_set(0,`webmarco`.`cscart_categories`.`usergroup_ids`) or find_in_set(1,`webmarco`.`cscart_categories`.`usergroup_ids`)) and (`webmarco`.`cscart_categories`.`status` in ('A','H')) and (`webmarco`.`cscart_categories`.`storefront_id` in (0,1)))"
              }
            },
            {
              "table": {
                "table_name": "prices",
                "access_type": "ref",
                "possible_keys": [
                  "usergroup",
                  "product_id",
                  "lower_limit",
                  "usergroup_id"
                ],
                "key": "usergroup",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "webmarco.var_val_860.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "25.00",
                "using_index": true,
                "cost_info": {
                  "read_cost": "1.81",
                  "eval_cost": "0.09",
                  "prefix_cost": "1218.75",
                  "data_read_per_join": "28"
                },
                "used_columns": [
                  "product_id",
                  "lower_limit",
                  "usergroup_id"
                ],
                "attached_condition": "((`webmarco`.`prices`.`lower_limit` = 1) and (`webmarco`.`prices`.`usergroup_id` in (0,0,1)))"
              }
            },
            {
              "table": {
                "table_name": "products",
                "access_type": "eq_ref",
                "possible_keys": [
                  "PRIMARY",
                  "status",
                  "idx_parent_product_id"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "webmarco.var_val_860.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "5.00",
                "cost_info": {
                  "read_cost": "0.45",
                  "eval_cost": "0.00",
                  "prefix_cost": "1219.29",
                  "data_read_per_join": "180"
                },
                "used_columns": [
                  "product_id",
                  "product_type",
                  "status",
                  "company_id",
                  "usergroup_ids",
                  "parent_product_id"
                ],
                "attached_condition": "((`webmarco`.`products`.`company_id` = 1) and (`webmarco`.`products`.`status` = 'A') and ((`webmarco`.`products`.`usergroup_ids` = '') or find_in_set(0,`webmarco`.`products`.`usergroup_ids`) or find_in_set(1,`webmarco`.`products`.`usergroup_ids`)))"
              }
            },
            {
              "table": {
                "table_name": "cscart_ec_table_booking_system",
                "access_type": "eq_ref",
                "possible_keys": [
                  "PRIMARY"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "4",
                "ref": [
                  "webmarco.var_val_860.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "100.00",
                "cost_info": {
                  "read_cost": "0.02",
                  "eval_cost": "0.00",
                  "prefix_cost": "1219.32",
                  "data_read_per_join": "3"
                },
                "used_columns": [
                  "product_id",
                  "booking_type"
                ],
                "attached_condition": "<if>(is_not_null_compl(cscart_ec_table_booking_system), (`webmarco`.`cscart_ec_table_booking_system`.`product_id` = `webmarco`.`var_val_860`.`product_id`), true)"
              }
            },
            {
              "table": {
                "table_name": "popularity",
                "access_type": "eq_ref",
                "possible_keys": [
                  "PRIMARY",
                  "total"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "webmarco.var_val_860.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "100.00",
                "cost_info": {
                  "read_cost": "0.02",
                  "eval_cost": "0.00",
                  "prefix_cost": "1219.35",
                  "data_read_per_join": "0"
                },
                "used_columns": [
                  "product_id",
                  "total"
                ]
              }
            },
            {
              "table": {
                "table_name": "descr1",
                "access_type": "eq_ref",
                "possible_keys": [
                  "PRIMARY",
                  "product_id"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "product_id",
                  "lang_code"
                ],
                "key_length": "9",
                "ref": [
                  "webmarco.var_val_860.product_id",
                  "const"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "100.00",
                "cost_info": {
                  "read_cost": "0.02",
                  "eval_cost": "0.00",
                  "prefix_cost": "1219.37",
                  "data_read_per_join": "157"
                },
                "used_columns": [
                  "product_id",
                  "lang_code",
                  "product"
                ]
              }
            }
          ]
        }
      }
    }
  }
}

Result

product_id product company_name ec_rfq_whatsapp_number ec_rfq_bht ec_rfq_phone_number ec_rfq_bhf product_ids product_types parent_product_ids product_type parent_product_id booking_type
369578 Cante Per Femra Me Rrip Te Holle Simtech 369578 P 0 P 0