У меня есть большое количество строк, и я хотел бы знать различные диапазоны данных.Группировка диапазонов в строках в Mysql
С помощью этого кода
select
count(CASE WHEN the_amount BETWEEN 2000 AND 3000 THEN 1 END) as '2000 to 3000',
count(CASE WHEN the_amount BETWEEN 3001 AND 4000 THEN 1 END) as '3001 to 4000',
count(CASE WHEN the_amount BETWEEN 4001 AND 5000 THEN 1 END) as '4001 to 5000',
count(CASE WHEN the_amount BETWEEN 5001 AND 6000 THEN 1 END) as '5001 to 6000'
from r_data where transaction_type = 'send'
я могу рассчитывать диапазоны, но это производит только один ряд.
Что я хотел бы это данные в этом формате
+------+------+----------+
| From | To | count(*) |
+------+------+----------+
| 2000 | 3000 | 3 |
| 3001 | 4000 | 4 |
| 4001 | 5000 | 2 |
| 5001 | 6000 | 1 |
+------+------+----------+
Я пытаюсь написать код, как этот
SELECT
2000 as 'from',
3000 as 'to',
COUNT(*) as 'occurence'
FROM r_data where transaction_type = 'send'
GROUP BY the_amount;
но это только шоу для 2000
и 3000
и не событие дает правильный счет. Как я могу написать запрос для получения формата, который я хочу ?.
Спасибо Olie.This также поможет мне заполнить точки графика, где я действительно не знаю общий вал, который, возможно, может перейти на ось y. – user3272483