onsulta SQL que agrupa itens diferentes em bucke

Estou tentando escrever uma consulta que retorne a contagem de itens cujo preço cai em intervalos de certrain:

Por exemplo, se minha tabela for:

item_name | price
i1        | 2
i2        | 12
i3        | 4
i4        | 16
i5        | 6

saída

range   | number of item
0 - 10  |  3
10 - 20 |  2

A maneira como estou fazendo isso até agora é

SELECT count(*)
FROM my_table
Where price >=0
and price <10

entã

SELECT count(*)
FROM my_table
Where price >=10
and price <20

e, em seguida, copie e cole meus resultados sempre no Exce

Existe uma maneira automática de fazer isso em uma consulta sq

questionAnswers(3)

yourAnswerToTheQuestion