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 (212) 
  AND companies.status IN ('A') 
  AND prices.price >= 123.45 
  AND prices.price <= 136.45 
  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.00756

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` <> 212)"
              }
            },
            {
              "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` >= 123.45) and (`atulecarter_atul_demo1`.`prices`.`price` <= 136.45))"
              }
            },
            {
              "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
148 16GB A Series Walkman Video MP3 CS-Cart 130.00000000 148 P 0 P 0 <p>With an A Series by your side, there's never a dull moment. The dazzling 2.8" (400x240) touch screen delivers incredible color and quickly serves up photos, videos, album artwork and more. Easily navigate your media library with the tap of a finger or via traditional button controls if you prefer. Experience your music wirelessly and stream audio to other compatible devices with integrated Bluetooth&reg;. Sony Clear Audio technologies work as a team to make your music sound the best it can &ndash; Digital Sound Enhancement Engine, Clear Stereo and Clear Bass Audio Technologies offer deeper, richer sound plus S-Master&trade; MX amplification makes for higher signal to noise ratios and less distortion. Upload the matching lyric file and learn the words to your favorite song as your A Series scrolls them along the screen in sync with the music. Premium EX earbuds and USB cable included.</p>
230 2011 Pit Boss CS-Cart 125.00000000 230 P 0 P 0 <p>Hydration Capacity: 100 oz (3 L)<br /><br />Total Capacity: 1800 cu in (29.50 L)<br /><br />CamelBak&reg; Got Your Bak&trade; Guarantee: If we built it, we'll Bak it&trade; with our lifetime guarantee. <br /><br />Reservoir Features: Quick Link&trade; System, 1/4 turn - easy open/close cap, lightweight fillport, dryer arms, center baffling and low-profile design, patented Big Bite&trade; Valve, HydroGuard&trade; technology, insulated PureFlow&trade; tube, easy-to-clean wide-mouth opening<br /><br />BACK PANEL: Air Director&trade; Snowshed&trade;<br /><br />HARNESS: Therminator&trade; provides easy access for frequent sipping, insulated and fully enclosed to protect against freezing<br /><br />BELT: Load-bearing with cargo<br /><br />Additional Features: <br />Versatile Snowboard / Ski Carry (Diagonal, Vertical or Horizontal), tri-zip quick gear access, gear compression, goggle pocket, essentials pocket<br />Drop-out Probe Pocket for instant probe access -- locate survivors without unloading your pack<br /><br />Designed to carry: skis/snowboard, shovel, probe, skins, snowshoes, helmet, goggles, extra layers, lunch, tools, camera, phone, wallet, keys</p>
126 Casio PRIZM fx-CG10 CS-Cart 129.99000000 126 P 0 P 0 <p><br /><img style="word-wrap: break-word; border-style: initial; border-color: initial;" src="http://www.casio.com/resource/images/pressreleases/fx-CG10_Prizm_press_2.jpg" alt="PRIZM fx-CG10" align="right" /><strong style="word-wrap: break-word;">High-resolution color LCD with full textbook-style display</strong><br style="word-wrap: break-word;" /><br style="word-wrap: break-word;" />The color LCD offers full textbook-style display with the highest pixel resolution* (82,944 dots) and widest color reproduction* (65,536 colors) of any calculator. PRIZM&trade; comes with high-resolution fonts up to 18x24 dots (including blank dots), to enable equations and text to be displayed just like they appear in textbooks. The Blanview LCD delivers superior visibility and low power consumption, enabling color display with an estimated run time of 140 hours on four AAA-size alkaline batteries.**<strong style="word-wrap: break-word;"><br style="word-wrap: break-word;" /></strong>*As of October 7, 2010, for the pixel resolution and color reproduction of calculators. According to a survey by Casio Computer Co., Ltd.<br style="word-wrap: break-word;" />**Using repetition of the following one-hour sequence: Menu display for 5 minutes, Run-Matrix mode calculation for 5 minutes, flashing cursor in Run-Matrix mode for 50 minutes. Based on default settings for display brightness and auto power off. (Refer to the Specifications for exact settings)&nbsp;&nbsp;<strong style="word-wrap: break-word;"><img style="word-wrap: break-word; border-style: initial; border-color: initial;" src="http://www.casio.com/resource/images/pressreleases/fx-CG10_Prizm_press_3.jpg" alt="PRIZM fx-CG10" align="right" /></strong><strong style="word-wrap: break-word;">Picture Plot enables learning from real-life pictures</strong><strong style="word-wrap: break-word;">&nbsp;</strong><br style="word-wrap: break-word;" /><br style="word-wrap: break-word;" />Picture Plot enables users to create their own graphs over pictures displayed on the color LCD. PRIZM&trade; comes with 55 types of color pictures that users can create graphs over, such as a picture of the parabola of jets from a water fountain and an image sequence of a clock&rsquo;s pendulum movement. Users can perform regression calculations from the completed graphs to enhance their understanding of math functions.&nbsp;&nbsp;&nbsp;<strong style="word-wrap: break-word;">Multitude of functions that leverage the color LCD</strong><br style="word-wrap: break-word;" /><br style="word-wrap: break-word;" />Colors can be added to a multitude of graphing objects including dotted lines, circles, and bars, as well as grid lines on graphs, labels of coordinate axes, and coordinate values displayed during tracing. The Color Link function links the colors used in graphs to the designated values in the spreadsheet screen, to aid the visual comprehension of trends and changes in values. PRIZM&trade; automatically color-codes brackets when entering equations with multiple brackets, as a visual aid to facilitate the entry of complex equations.&nbsp;</p> <table style="word-wrap: break-word;" align="center"> <tbody style="word-wrap: break-word;"> <tr style="word-wrap: break-word;"> <td style="word-wrap: break-word;"><strong style="word-wrap: break-word;"><img style="word-wrap: break-word; border-style: initial; border-color: initial;" src="http://www.casio.com/resource/images/pressreleases/fx-CG10_Prizm_press_3.jpg" alt="PRIZM fx-CG10" align="left" /></strong></td> <td style="word-wrap: break-word;"><strong style="word-wrap: break-word;"><img style="word-wrap: break-word; border-style: initial; border-color: initial;" src="http://www.casio.com/resource/images/pressreleases/fx-CG10_Prizm_press_4.jpg" alt="PRIZM fx-CG10" align="left" /></strong></td> <td style="word-wrap: break-word;"><strong style="word-wrap: break-word;"><img style="word-wrap: break-word; border-style: initial; border-color: initial;" src="http://www.casio.com/resource/images/pressreleases/fx-CG10_Prizm_press_5.jpg" alt="PRIZM fx-CG10" align="left" /></strong></td> </tr> </tbody> </table>