Дело в том, что я пытаюсь создать таблицу, которая отображает только максимальное количество голосов для данного кандидата.Для этого нужно было объединить три разных таблицы (это на испанском) Sedes
, Candidatos
и Voto
.Я дошел до того, что, выполняя следующие строки, я получаю список со всем общим количеством голосов на кандидата на каждую презентацию:
SELECT sedes.nombresede, candidatos.apellido & ", " & candidatos.nombre AS Candidato, count(voto.numcandidato) AS TOTAL
From (Voto INNER JOIN Sedes ON Sedes.sede_id=Voto.sede_id)
INNER JOIN Candidatos ON Voto.numcandidato=Candidatos.numcandidato
GROUP BY nombresede, candidatos.apellido & ", " & candidatos.nombre
Теперь это не мой конечный продукт, мне нужнодля списка, чтобы показать мне только кандидата в каждом учреждении, которое получило максимальное количество голосов.Я попытался сделать это:
SELECT sedes.nombresede, candidatos.apellido & ", " & candidatos.nombre AS Candidato, count(voto.numcandidato) AS TOTAL
From (Voto INNER JOIN Sedes ON Sedes.sede_id=Voto.sede_id)
INNER JOIN Candidatos ON Voto.numcandidato=Candidatos.numcandidato
GROUP BY nombresede, candidatos.apellido & ", " & candidatos.nombre
HAVING max(TOTAL)
Но при выполнении, доступ подсказывает мне дать значение TOTAL
, как при использовании предложения параметров.Как видите, я также столкнулся с проблемой при попытке использовать Candidato
внутри GROUP BY
и обошел его, скопировав точное выражение, использованное в предложении SELECT
.Может быть, это как-то связано с другой проблемой?
Большое, большое спасибо за помощь!