sql – 从数据库中的列值生成一个直方图

假设我有一个数据库列’grade’,如下所示:
|grade|
|    1|
|    2|
|    1|
|    3|
|    4|
|    5|

sql中是否有一个非常简单的方法生成这样的直方图?

|2,1,0|

其中2表示1级出现两次,1s平均成绩{2..5}发生一次,0表示6级不发生.

我不介意直方图是否是每行一行.

如果重要,数据库是由Perl CGI通过unixODBC / FreeTDS访问的sql Server.

编辑:感谢您的快速回复!如果不存在的值(如上面的例子中的6级)不会发生,只要我能够确定哪个直方图值属于哪个等级,那就可以了.

解决方法

SELECT COUNT(grade) FROM table GROUP BY grade ORDER BY grade

没有验证,但它应该工作.但是,不会显示计数6s等级,因为它不存在于表中…

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...