CREATE TABLE `products` ( `name` VARCHAR( 10 ) NOT NULL , `price` INT NOT NULL , PRIMARY KEY ( `name` ) ); INSERT INTO products VALUES ('tea', 7), ('coffie', 14), ('sugar', 3); SELECT @a := CASE WHEN price BETWEEN 0 AND 9 THEN 0 WHEN price BETWEEN 10 AND 19 THEN 10 END AS priceIntervalStart, @a, COUNT(*) AS productCount FROM products GROUP BY priceIntervalStart ; SELECT CASE WHEN price BETWEEN 0 AND 9 THEN 0 WHEN price BETWEEN 10 AND 19 THEN 10 END AS priceIntervalStart, COUNT(*) AS productCount FROM products GROUP BY priceIntervalStart ; SELECT @a := price AS priceIntervalStart, price, @a, COUNT(*) AS productCount FROM products GROUP BY priceIntervalStart ;