2013-10-21 83 views
0

我有以下表使用COUNT操作:我需要訪問SQL

PATIENT    PRACTICE 
- PATIENT_ID   - PRACTICE_ID 
- PATIENT_NAME   - PRACTICE_NAME 
- PRACTICE_ID 

這些表保留誰參加醫療實踐患者軌道。我需要使用COUNT操作來計算每次練習的患者數量,然後按患者數量的升序對結果進行排序。

下面是所需的輸出:

PracticeName  NumberOfPatients 
North Medical  3 
East Medical  4 
South Medical  5 
West Medical  6 

到目前爲止我試過,但我希望它不會指望它:

SELECT BRANCH.BRANCH_NAME, COUNT(EMPLOYEE.EMP_NUM) 
FROM EMPLOYEE, BRANCH 
GROUP BY BRANCH.BRANCH_NAME, EMPLOYEE.EMP_NUM; 
+0

到目前爲止你嘗試了什麼? – mucio

回答

1

這是一個很瑣碎的問題,你應該在提問之前做過一些基礎研究,這就是爲什麼有人投下你的問題。

爲了幫助新人出來,這裏有一個查詢會給你那些結果。

SELECT pr.Practice_Name, COUNT(pa.Patent_ID) as NumberOfPatients 
FROM practice pr INNER JOIN patient pa ON pr.practice_id = pa.practice_id 
GROUP BY pr.practice_name 
ORDER BY COUNT(pa.patientid) 
+0

+1:請注意,您可以在「ORDER BY」中使用列別名「NumberOfPatients」。 (但不是其他地方) – RBarryYoung

0

你似乎對SQL比較陌生,所以你的問題有點模糊。試試這個:

select pra.practice_name, 
     count(pat.patient_id) as NumberOfPatients 
from patient as pat inner join practice as pra on (pat.practice_id = pra.practice_id) 
group by pra.practice_name 

並學習加入表的基礎知識,以更好地理解SQL。

+0

呵呵,太慢了:) –