2014-10-20 33 views
-4

我無法通過使用sql-server從我的數據庫中提取信息來創建報告時遇到問題。我有3個表格:事件,行動和代理。SQL statment,總結髮生次數,按照出現次數從高到低排序

在事件發生後的表我有屬性,如

primary key (incident_id) 
and others (status and action_id). 

在我的操作表我有

foreign keys (incident_id and agency_id) 
a primary key (action_id). 

在我

Agency table 

我有一個

primary key (agency_id) 
and other attributes such as (agency_name and agency_type). 

我需要一個按照類型進行分組的sql語句,總結事件所具有的操作的數量,並將它們從最高位置降到最低位置,狀態關閉。

任何幫助將不勝感激。 謝謝你的時間。

+3

的mysql + SQL服務器。請選擇一個。 – Tanner 2014-10-20 15:43:05

+2

「我需要一個sql語句......」。這不是獲得幫助的正確方法。您應該向我們展示您已經做出了一些努力,顯示您的代碼並告訴我們您遇到了哪些問題以獲得幫助並避免降低成本。 – consuela 2014-10-20 15:43:31

回答

1

使用MySQL的語法,下面應該幫助你前進的道路:

SELECT ag.agency_type, count(ac.action_id) 
FROM 
incident AS i INNER JOIN 
action AS ac ON i.incident_id=ac.incident_id INNER JOIN 
agency AS ag ON ac.agency_id=ag.agency_id 
WHERE i.status='Closed' 
GROUP BY ag.agency_type 
ORDER BY count(ac.action_id) DESC;