2011-11-15 14 views
1

私は自分のサイトにチケット管理システムを持っています。表には、このような店チケット情報dept_infoレコード内のtkt_container 2列名チケットIDとユーザーIDを持つすべての応答カウントのクエリとの混乱

TICKET ID | USER ID 
101  | A 
105  | B 
103  | A 
110  | A 
105  | A 
101  | A 
103  | A 
101  | A 

は、他のテーブルの名前。

Dept Name | Ticket ID 
Billing | 101 
Billing | 110 
Accounts | 105 
CustomerSu| 103 

今、私は部門名と合計応答のような、このようにフェッチしたい。..

DEpt Name | Total responses for A 
Billing | 4 
Accounts | 2 
CustomerSu| 2 
+0

私はInnerクエリで試しましたが、それは私のニーズを満たすものではありませんでしたので、それを削除しました。 –

答えて

0

この(私は、ユーザー「A」のためにそれを書いた)のようなクエリを使用します

select di.dept_name, count(*) as 'Total responses for A' 
from dept_info di inner join tkt_container tc on di.ticket_id = tc.ticket_id 
where tc.user_id = 'A' 
group by di.dept_name 
order by di.dept_name 
2
SELECT `Dept Name`, COUNT(`USER ID`) 
FROM dept_info 
LEFT JOIN tkt_container ON tkt_container.`TICKET ID` = dept_info.`Ticket ID` 
GROUP BY dept_info.`Dept Name` 

私は強くあなたのフィールドとテーブルのためのより良い名を選んで、あなたを促す。フィールド名に空白を入れる正当な理由は全くありません。

+0

私はすでにそれを行っていますが、ここで正しい方法で表現する方法を見逃していました。 –