这是我的设置
database = mine
table = mytable
field = hair
field = eyes
field = state
目前,我能够运行一个查询,为我在头发和眼睛领域中具有“棕色”的任何人提供计数。我正在跑步:
SELECT count(*)
FROM mine.mytable
WHERE hair = 'brown' OR eyes = 'brown'
但我需要对每个状态显示棕色眼睛或棕色头发的状态进行计数。我知道如何做的唯一方法是将AND state ='NY'作为查询的一部分,但这意味着我需要每个组合运行50次查询以获得每个状态的计数。如何在不运行查询50次的情况下运行查询以显示每个状态的计数?
答案 0 :(得分:2)
SELECT count(*) state_count,IFNULL(state,'Total') state
FROM mine.mytable
WHERE hair = 'brown' OR eyes = 'brown'
GROUP BY state WITH ROLLUP;
答案 1 :(得分:1)
您需要按州分组才能按州获得计数。
SELECT state, COUNT(*) count
FROM mine.mytable.
WHERE hair = 'brown' OR eyes = 'brown'
GROUP BY state