2012-08-01 2 views
0

의 필드와 같은 :Subcount의 같은 테이블 구조와 MySQL의 쿼리 통계 응용 프로그램에 대한

unique_id | browser_family | os | date_time | js_enabled | flash_enabled | non_binary_field 

1   firefox   w7 ...   1   0    yes 
2   chrome   w7 ...   1   1    no 
3   ie9    wx ...   0   0    yes 

그래서, 내가 어떤 분야에 어디에 절에 쿼리를 수행, 그리고 그것을 줄 거라고 'os` ='w7 '및 date (`date_time`) = '01 -08-2012')에 대해 js_enabled = 1, flash_enabled = 0, non_binary_field = 'yes'로 계산합니다.

결과는 다음과 같습니다

count(js_enabled=1) | count(flash_enabled=1) | count(non_binary_field='yes') 
2      1      1 

이는 단일 쿼리에 수 있습니까?

감사합니다.

답변

3
select sum(js_enabled=1), 
     sum(flash_enabled=1), 
     sum(non_binary_field='yes') 
from your_table 
where `os` = 'w7' 
and date(`date_time`) = '2012-08-01' 
+0

은 간단 소리! 그것을 시도하게하십시오. – tweak2

+0

작동하지 않을 것이라고 생각합니다. sum은 column_name을 매개 변수로 취합니다. js_enabled는 소스 테이블 –

+0

에서 column_name이 아닙니다. :) 나는 그것을 많이 사용했습니다. boolean 연산을'sum'으로하면'true' 사례가 합쳐집니다. –

0

각 필드는 별도의 하위 쿼리에 의해 채워질 수 :

select 
(select count(js_enabled) from yourtable where js_enabled=1), 
(select count(flash_enabled) from yourtable where flash_enabled=1), 
(select count(non_binary_field) from yourtable where non_binary_field='yes')