2017-02-10 232 views
0

我需要列出90個章節中每個成員的「平均年齡」。 有3個表格:成員,章節,Chapt_Memb(地圖成員<-到 - >章節)。SQL查詢 - 列表章節成員的平均年齡

這將產生一個單一的答案,所有章節的所有成員的平均年齡:

SELECT distinct Chapters.ID, Chapters.Name, avg(floor(datediff(curdate(),Members.dob)/365.242199)) as AvgAge 
    FROM Members,Chapters,Chapt_Memb 
    WHERE Chapters.ID=Chapt_Memb.chapt_id and Members.ID=Chapt_Memb.memb_id 
    ORDER by Chapters.ID 

返回: 「ID-1,名稱=威爾明頓,AvgAge = 48.275」

如何獲得每個章節的列表及其各自的AvgAge?

+0

你需要使用分組的獨特和組。 –

回答

2

失去通過ID和名稱

SELECT Chapters.ID, Chapters.Name, avg(floor(datediff(curdate(),Members.dob)/365.242199)) as AvgAge 
FROM Members,Chapters,Chapt_Memb 
WHERE Chapters.ID=Chapt_Memb.chapt_id and Members.ID=Chapt_Memb.memb_id 
GROUP BY Chapters.ID, Chapters.Name 
ORDER by Chapters.ID 
+0

謝謝!像冠軍一樣工作! – Mike97

+0

@ Mike97確實接受了正確的答案:) –

+0

是的(對不起,我是新來的「提問」部分)! – Mike97