Я пытался запросить процент увеличения продукта, сгруппированного в определенном диапазоне, в зависимости от фактического увеличения для каждого прогона. Так, например, у меня есть следующая схема таблицы

Теперь, если я запросить процент увеличения, я получу что-то вроде:
SELECT *, (((newPrice - price)/price) * 100 ) as PERCENTAGE FROM Product

То, что я пытаюсь получить, это сгруппировать значения в пределах определенного диапазона в зависимости от рассчитанного увеличения. Так что для этого запустите что-то вроде этого:
| Range | #COUNT |
| 0-10% | 3 |
| 30-40% | 1 |
и более диапазонов и продуктов, если таковые имеются
Я пытался:
Select *, COUNT(idProduct) AS COUNT FROM Product
where (((newPrice - price)/price) * 100 ) BETWEEN 0 AND 10
что дает мне:

Но мне нужно настроить запрос таким образом, чтобы он мог определить разумный процентный диапазон (т. Е. Без жесткого кодирования значений МЕЖДУ 0 И 10 ) и сгруппировать значения в нем для разных пробегов. Есть идеи?
Спасибо!
таблица продуктов
CREATE TABLE `product` (
`idproduct` INT NOT NULL ,
`description` VARCHAR(45) NULL ,
`price` INT NULL ,
`newPrice` INT NULL ,
PRIMARY KEY (`idproduct`) );