2012-02-02 3 views
0

내가 가진 (파트 2) 필드 이름에 따라 두 MySQL의 테이블 행 개수 :MySQL은 :.

resp_id | resp_comp_name 
--------+---------------- 
    1 |  Google 
    2 |  Firefox 

df_id | project_id | resp_id | status 
------+------------+---------+---------- 
1  |  1  | 1 | Open 
2  |  1  | 1 | Open 
3  |  1  | 1 | Closed 
4  |  1  | 2 | Open 
5  |  1  | 2 | Closed 

책임

결함을 내가 필요 출력

resp_comp_name | open | closed 
---------------+------+-------- 
    Google  | 3 | 1 
    Firefox  | 1 | 1 

내가 쓴 :

 SELECT r.resp_comp_name, d.status, COUNT(d.df_id) AS total 
     FROM pms_defects d 
    LEFT JOIN pms_responsibles r ON d.resp_id=r.resp_id 
     WHERE d.project_id='1' AND d.resp_id != 0 
    GROUP BY d.resp_id 
    ORDER BY total DESC 

가 생산 :

제표 및 합계가 열려 이동하는 경우에 사용

enter image description here

+1

좋은 이야기입니다. 우리가 뭘하고 싶니? –

답변

0
SELECT r.resp_comp_name, sum(if(d.status = 'Open',1,0)) as open, 
sum(if(d.status ='Closed',1,0)) as closed from pms_defects d, pms_responsibles r 
where r.resp_id = d.resp_id group by d.resp_id 

는/열을 기반으로 로우 -에서 마감했다.