Я строю на том, что Илья Володин делал выше, это должно позволить вам выбрать диапазон оценок, которые вы хотите сгруппировать в своем результате:

тим, у меня есть столбец базы данных «оценка», как это:

|grade|
|    1|
|    2|
|    1|
|    3|
|    4|
|    5|

Есть ли в SQL нетривиальный способ генерировать гистограмму, подобную этой?

|2,1,1,1,1,0|

где 2 означает, что оценка 1 встречается дважды, средние оценки 1s {2..5} встречаются один раз, а 0 означает, что оценка 6 вообще не встречается.

Я не против, если гистограмма - одна строка на счет.

Если это имеет значение, база данных - это SQL Server, доступ к которому осуществляется perl CGI через unixODBC / FreeTDS.

РЕДАКТИРОВАТЬ: Спасибо за ваши быстрые ответы! Ничего страшного, если несуществующие значения (например, оценка 6 в приведенном выше примере) не встречаются, пока я могу определить, какое значение гистограммы принадлежит какому классу.

Ответы на вопрос(7)

Ваш ответ на вопрос