2013-10-29 90 views
0

我有一个关于我的SQL查询的问题。下面你将看到我的数据库:我的SQL查询中的平均数

My database

而且我有以下查询现在:

SELECT enquete_vraag,enquete_antwoord,docent,vak,semesterstart 
FROM ENQUETE_ANTWOORD 
LEFT JOIN KDV ON ENQUETE_ANTWOORD.kdv_ID = KDV.kdv_ID 
LEFT JOIN DOCENT ON KDV.docent_ID = DOCENT.docent_ID 
LEFT JOIN VAK ON KDV.vak_ID = VAK.vak_ID 
LEFT JOIN ENQUETE_VRAAG ON ENQUETE_ANTWOORD.enquete_vraag_ID = ENQUETE_VRAAG.enquete_vraag_ID 
WHERE DOCENT.docent_ID = variableDocentID AND VAK.vak = variableVak 

而且我在datagridview显示返回的数据:

Datagridview

现在,datagridview显示所有学生正在回答的所有问题。我想要的是每个问题的average,只显示。所以你有1行的问题6与平均答案和问题7与平均答案等,我如何实现在我的SQL查询?

回答

2

嗨,你应该做这样的事情在你的代码这个

SELECT enquete_vraag,AVG(enquete_antwoord) enquete_antwoord,docent,vak,semesterstart 
FROM ENQUETE_ANTWOORD 
LEFT JOIN KDV ON ENQUETE_ANTWOORD.kdv_ID = KDV.kdv_ID 
LEFT JOIN DOCENT ON KDV.docent_ID = DOCENT.docent_ID 
LEFT JOIN VAK ON KDV.vak_ID = VAK.vak_ID 
LEFT JOIN ENQUETE_VRAAG ON ENQUETE_ANTWOORD.enquete_vraag_ID = ENQUETE_VRAAG.enquete_vraag_ID 
WHERE DOCENT.docent_ID = variableDocentID AND VAK.vak = variableVak 
GROUP BY enquete_vraag, docent,vak,semesterstart 
+0

感谢队友,作品! –

1
SELECT enquete_vraag,AVG(enquete_antwoord) as [enquete_antwoord] 
FROM ... 
GROUP BY enquete_vraag 

的问题呢,当然,变等选择哪个vak ....因为翻译的,是不容易的,我猜测它的值意味着什么,所以很难劝上。您可能能够在GROUP BY子句中包含额外的值(如果它们对于所有匹配的行都是相同的);或者你可能能够采取MIN/MAX

0

只需添加AVG函数。

...AVG(enquete_antwoord)... 

写上面的代码给你正确的答案