如何计算数据库列中所有不同值的出现次数?

时间:2010-05-19 15:08:46

标签: sql database postgresql

我有一个说有10列的Postgre数据库。第五列称为column5。数据库中有100行,column5的可能值为c5value1, c5value2, c5value3...c5value29, c5value30。我想打印一个表格,显示每个值出现的次数。

所以表格看起来像这样:

Value(of column5)          number of occurrences of the value
     c5value1                              1
     c5value2                              5
     c5value3                              3
     c5value4                              9
     c5value5                              1
     c5value6                              1
        .                                  .
        .                                  .
        .                                  .

这样做的命令是什么?

2 个答案:

答案 0 :(得分:77)

按您感兴趣的列分组,然后使用count来获取每个组中的行数:

SELECT column5, COUNT(*)
FROM table1
GROUP BY column5

答案 1 :(得分:17)

使用GROUP BY子句和COUNT()聚合函数:

SELECT column5, COUNT(column5) AS Occurences
FROM myTable
GROUP BY column5