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, 
  MIN(
    IF(
      prices.percentage_discount = 0, 
      prices.price, 
      prices.price - (
        prices.price * prices.percentage_discount
      )/ 100
    )
  ) as price, 
  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, 
  descr1.full_description as full_description 
FROM 
  cscart_products as products 
  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_product_prices as prices_2 ON prices.product_id = prices_2.product_id 
  AND prices_2.lower_limit = 1 
  AND prices_2.price < prices.price 
  AND prices_2.usergroup_id IN (0, 0, 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) 
WHERE 
  1 
  AND products.product_id NOT IN (26) 
  AND companies.status IN ('A') 
  AND prices.price >= 33.24 
  AND prices.price <= 36.74 
  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 prices_2.price IS NULL 
  AND products.company_id IN('1', '2', '3', '4', '5', '6') 
  AND products.product_type != 'D' 
GROUP BY 
  product_id 
ORDER BY 
  product asc, 
  products.product_id ASC 
LIMIT 
  0, 3

Query time 0.00740

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "44.30"
    },
    "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": "ALL",
                "possible_keys": [
                  "PRIMARY"
                ],
                "rows_examined_per_scan": 6,
                "rows_produced_per_join": 1,
                "filtered": "16.67",
                "cost_info": {
                  "read_cost": "3.27",
                  "eval_cost": "0.20",
                  "prefix_cost": "3.47",
                  "data_read_per_join": "7K"
                },
                "used_columns": [
                  "company_id",
                  "status",
                  "company"
                ],
                "attached_condition": "((`atulecarter_atul_demo1`.`companies`.`status` = 'A') and (`atulecarter_atul_demo1`.`companies`.`company_id` in ('1','2','3','4','5','6')))"
              }
            },
            {
              "table": {
                "table_name": "cscart_categories",
                "access_type": "ALL",
                "possible_keys": [
                  "PRIMARY",
                  "c_status",
                  "p_category_id"
                ],
                "rows_examined_per_scan": 86,
                "rows_produced_per_join": 3,
                "filtered": "4.00",
                "using_join_buffer": "Block Nested Loop",
                "cost_info": {
                  "read_cost": "20.01",
                  "eval_cost": "0.69",
                  "prefix_cost": "24.16",
                  "data_read_per_join": "8K"
                },
                "used_columns": [
                  "category_id",
                  "storefront_id",
                  "usergroup_ids",
                  "status"
                ],
                "attached_condition": "(((`atulecarter_atul_demo1`.`cscart_categories`.`usergroup_ids` = '') or find_in_set(0,`atulecarter_atul_demo1`.`cscart_categories`.`usergroup_ids`) or find_in_set(1,`atulecarter_atul_demo1`.`cscart_categories`.`usergroup_ids`)) and (`atulecarter_atul_demo1`.`cscart_categories`.`status` in ('A','H')) and (`atulecarter_atul_demo1`.`cscart_categories`.`storefront_id` in (0,1)))"
              }
            },
            {
              "table": {
                "table_name": "products_categories",
                "access_type": "ref",
                "possible_keys": [
                  "PRIMARY",
                  "pt"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "category_id"
                ],
                "key_length": "3",
                "ref": [
                  "atulecarter_atul_demo1.cscart_categories.category_id"
                ],
                "rows_examined_per_scan": 3,
                "rows_produced_per_join": 10,
                "filtered": "100.00",
                "using_index": true,
                "cost_info": {
                  "read_cost": "3.63",
                  "eval_cost": "2.06",
                  "prefix_cost": "29.85",
                  "data_read_per_join": "165"
                },
                "used_columns": [
                  "product_id",
                  "category_id"
                ],
                "attached_condition": "(`atulecarter_atul_demo1`.`products_categories`.`product_id` <> 26)"
              }
            },
            {
              "table": {
                "table_name": "products",
                "access_type": "eq_ref",
                "possible_keys": [
                  "PRIMARY",
                  "status"
                ],
                "key": "PRIMARY",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "atulecarter_atul_demo1.products_categories.product_id"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "5.00",
                "cost_info": {
                  "read_cost": "10.32",
                  "eval_cost": "0.10",
                  "prefix_cost": "42.24",
                  "data_read_per_join": "2K"
                },
                "used_columns": [
                  "product_id",
                  "product_type",
                  "status",
                  "company_id",
                  "usergroup_ids",
                  "parent_product_id"
                ],
                "attached_condition": "((`atulecarter_atul_demo1`.`products`.`company_id` = `atulecarter_atul_demo1`.`companies`.`company_id`) and ((`atulecarter_atul_demo1`.`products`.`usergroup_ids` = '') or find_in_set(0,`atulecarter_atul_demo1`.`products`.`usergroup_ids`) or find_in_set(1,`atulecarter_atul_demo1`.`products`.`usergroup_ids`)) and (`atulecarter_atul_demo1`.`products`.`status` = 'A') and (`atulecarter_atul_demo1`.`products`.`product_type` <> 'D'))"
              }
            },
            {
              "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": [
                  "atulecarter_atul_demo1.products_categories.product_id"
                ],
                "rows_examined_per_scan": 3,
                "rows_produced_per_join": 0,
                "filtered": "3.26",
                "index_condition": "((`atulecarter_atul_demo1`.`prices`.`lower_limit` = 1) and (`atulecarter_atul_demo1`.`prices`.`usergroup_id` in (0,0,1)))",
                "cost_info": {
                  "read_cost": "1.56",
                  "eval_cost": "0.01",
                  "prefix_cost": "44.10",
                  "data_read_per_join": "1"
                },
                "used_columns": [
                  "product_id",
                  "price",
                  "percentage_discount",
                  "lower_limit",
                  "usergroup_id"
                ],
                "attached_condition": "((`atulecarter_atul_demo1`.`prices`.`price` >= 33.24) and (`atulecarter_atul_demo1`.`prices`.`price` <= 36.74))"
              }
            },
            {
              "table": {
                "table_name": "prices_2",
                "access_type": "ref",
                "possible_keys": [
                  "usergroup",
                  "product_id",
                  "lower_limit",
                  "usergroup_id"
                ],
                "key": "usergroup",
                "used_key_parts": [
                  "product_id"
                ],
                "key_length": "3",
                "ref": [
                  "atulecarter_atul_demo1.products_categories.product_id"
                ],
                "rows_examined_per_scan": 3,
                "rows_produced_per_join": 0,
                "filtered": "9.74",
                "not_exists": true,
                "cost_info": {
                  "read_cost": "0.15",
                  "eval_cost": "0.00",
                  "prefix_cost": "44.29",
                  "data_read_per_join": "0"
                },
                "used_columns": [
                  "product_id",
                  "price",
                  "lower_limit",
                  "usergroup_id"
                ],
                "attached_condition": "(<if>(found_match(prices_2), isnull(`atulecarter_atul_demo1`.`prices_2`.`price`), true) and <if>(is_not_null_compl(prices_2), ((`atulecarter_atul_demo1`.`prices_2`.`lower_limit` = 1) and (`atulecarter_atul_demo1`.`prices_2`.`price` < `atulecarter_atul_demo1`.`prices`.`price`) and (`atulecarter_atul_demo1`.`prices_2`.`usergroup_id` in (0,0,1))), true))"
              }
            },
            {
              "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": [
                  "atulecarter_atul_demo1.products_categories.product_id",
                  "const"
                ],
                "rows_examined_per_scan": 1,
                "rows_produced_per_join": 0,
                "filtered": "100.00",
                "cost_info": {
                  "read_cost": "0.01",
                  "eval_cost": "0.00",
                  "prefix_cost": "44.30",
                  "data_read_per_join": "68"
                },
                "used_columns": [
                  "product_id",
                  "lang_code",
                  "product",
                  "full_description"
                ]
              }
            }
          ]
        }
      }
    }
  }
}

Result

product_id product company_name price product_ids product_types parent_product_ids product_type parent_product_id full_description
41 Gift Set (Onesie Plus Socks) CS-Cart 35.00000000 41 P 0 P 0 <p>Welcome the new addition with this adidas Originals Gift Set, featuring a one-piece romper and matching socks. The romper has a sleepy-time Trefoil character on the back, while the front bristles with fun in vibrant stripes.</p> <div class="prodDetail"> <h3>Details</h3> <ul> <li>Crewneck</li> <li>Full snap-button front for easy on and off</li> <li>Allover yarn-dyed stripe pattern on front</li> <li>Solid-color back with Trefoil-inspired graphic</li> <li>Matching socks included</li> <li>95% cotton / 5% elastane single jersey</li> <li>Imported</li> </ul> </div>
202 New Year's Concert 2011 Diverse Klassik Welser-moest / Wiener Philharmoniker CS-Cart 34.68000000 202 P 0 P 0 <p><strong style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;">New Year's Concert 2011</strong><br style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;" /><span style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;">Diverse Klassik</span><br style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;" /><span style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;">Welser-moest / Wiener Philharmoniker</span></p>
203 New Year's Concert 2012 Diverse Wr.Philharmoniker / Jansons,M. / Wr.Sän CS-Cart 34.68000000 203 P 0 P 0 <p><span style="color: #333333; font-family: 'Trebuchet MS', serif, Times, 'Times New Roman'; font-size: 12px; line-height: 18px; background-color: #ffffff;">The traditional Vienna Philharmonic New Year's Concert on January 1, 2012, will be conducted for the second time by the Latvian conductor Mariss Jansons. Ever since the first concert together in April 1992, Mariss Jansons has belonged to the circle of conductors with whom the Vienna Philharmonic feels a special bond. His first New Year's Concert in 2006 was widely acclaimed by both audiences and the media. The New Year's Concert 2012 will once again be broadcast by the ORF to over 70 television networks and 300 radio stations worldwide.&nbsp;</span></p>