このクエリに問題があります
SELECT SUM(ROUND( SUM( note=3 ) / count( note=3 ) )) AS AVG, sma_famille.famille
FROM sma_notes, sma_famille, sma_agents, sma_service_activite
WHERE sma_famille.id_famille >=14
AND sma_famille.id_service =9
AND sma_notes.id_agent >=7
GROUP BY sma_famille.id_famille
エラーメッセージが表示されます
#1111 - Invalid use of group function
誰かがこの種のクエリの経験がある場合。
クエリの詳細は次のとおりです。
私はこのように最初のSUMなしでクエリを取ります(これはクエリコード全体です)
SELECT ROUND( SUM( note =3 ) / count( note =3 ) ) AS AVG, sma_famille.famille, sma_notes.id_agent
FROM sma_notes, sma_famille, sma_agents, sma_service_activite
WHERE sma_famille.id_famille >=14
AND sma_famille.id_service =9
AND sma_notes.id_agent >=7
AND sma_notes.id_agent = sma_agents.id_agent
AND sma_service_activite.id_activite = sma_notes.id_activite
AND sma_service_activite.id_famille = sma_famille.id_famille
GROUP BY sma_famille.id_famille, sma_notes.id_agent
次のような結果が得られます。
AVG | famille | id_agent
3 |BEL | 7
2 |BEL | 8
1 |BEL | 9
1 |CEL | 7
2 |CEL | 8
1 |CEL | 9
しかし、うまくいかなかった私のクエリでは:
SELECT SUM(ROUND( SUM( note=3 ) / count( note=3 ) )) AS AVG, sma_famille.famille
FROM sma_notes, sma_famille, sma_agents, sma_service_activite
WHERE sma_famille.id_famille >=14
AND sma_famille.id_service =9
AND sma_notes.id_agent >=7
AND sma_notes.id_agent = sma_agents.id_agent
AND sma_service_activite.id_activite = sma_notes.id_activite
AND sma_service_activite.id_famille = sma_famille.id_famille
GROUP BY sma_famille.id_famille
私はこの結果を得たい:
AVG | famille
6 |BEL
4 |CEL
前もって感謝します
アキリクス
乾杯