2011-04-02 71 views
36

我有一个表:如何在sqlite中进行统计分析?

ref,type 
1,red 
2,red 
3,green 
4,blue 
5,black 
6,black 

我想一个SQLite查询的结果是:

red,2 
green,1 
blue,1 
black,2 

我觉得最难做的事情就是找到一个问题,以配合我的问题呢?然后,我相信答案是指日可待....

:)

回答

32

快速谷歌给了我这个:http://www.mail-archive.com/[email protected]/msg38339.html

select type, count(type) from table group by type; 
+2

谢谢老兄,你是怎么在谷歌搜索来完成? – 2011-04-02 10:36:44

+6

'sqlite计数dupicates'。那样容易。 – 2011-04-02 10:37:49

+0

好 - 现在感觉有点傻了....再次感谢。 – 2011-04-02 10:39:53

74

我的快速谷歌与术语“算唯一值的sqlite3 “让我着迷于这篇文章。但是,我试图计算唯一值的总数,而不是每个类别的重复数。

从克里斯的上面的结果表中,我只想知道有多少独特的颜色。这里的正确答案是四[4]。

这可以通过使用 select count(DISTINCT type) from table;

+1

您能否提供一个使用此查询的最佳方法的示例。它会是'long count = DatabaseUtils.longForQuery(db,“select count(DISTINCT type)from table”,null);' – 2014-07-04 10:49:38

+1

@Boom,count(DISTINCT类型)是我今天要找的。 – 2017-08-11 07:59:02

+0

不是提问者所要求的,所以没有加票,而是完全符合我的需要,谢谢!此外,我将列名称作为“total”这样的字符串,“select count(distinct type)as total from table” – 2018-02-24 01:23:04