2014-11-23 217 views
1

Fiddle example获得总计数和组数在MySQL

我很好奇,看看是否有其他选项来获得总计数和组数在一个查询。

使用子查询中去,以获得这一结果的方式:

TOTAL OPTIONS OPTION_COUNT 
4  A  3 
4  B  1 

表模式:

CREATE TABLE poll 
    (`poll_id` int,`user_id` int,`options` varchar(30)) 
; 

INSERT INTO poll 
    (`poll_id`,`user_id`,`options`) 
VALUES 
    (1,1,'A'), 
    (2,2,'A'), 
    (3,3,'B'), 
    (4,4,'A') 
; 

查询:

SELECT (SELECT Count(*) AS total FROM poll)AS total 
,options,option_count 
FROM 
(
    SELECT options,Count(options) AS option_count 
    FROM poll 
    GROUP BY options 
)p 
GROUP BY options 

回答

1

它不会有可能没有子查询,但可以写一个不同的和更简单的方式,如:

从轮询GROUP BY选项中选择选项,计数(选项),(SELECT Count(*)FROM poll);