У меня есть эта база данных, и мне было интересно создать отличный выбор, но это слишком сложно для меня, я думаю, я пробовал так много способов, и я очень близко, но я не могу продолжать.
База данных
Table -> Candidato | IdCandidato(int) | idNome(varchar)
Table -> Voto | idVoto(int) | Candidato_idCandidato(int) | DiaVotacao(date)
Я создаю систему веб-голосования, и мне нужно выбрать, чтобы завершить графику, чтобы показать общее количество голосов за каждый день для каждого кандидата.
Candidato = candidate | voto = vote | diaVotacao = voting day (english translation)
Мне нужен такой ответ:
|VotingDay---------|-----Candidate1----------|-----Candidate2------|--Candidate3
|2014-05-14-------|---13(total votes)---------|------------4------------|-----------10|
|2014-05-15-------|---18(total votes)---------|------------0------------|------------8|
и пока я получил это:
|VotingDay---------|-----TOTAL Votes----------|-----Name------|
|2014-05-14-------|---13(total votes)---------|-Candidate1
|2014-05-14-------|---18(total votes)---------|-Candidate2
|2014-05-15-------|---10(total votes)---------|-Candidate1
|2014-05-15-------|----8(total votes)---------|-Candidate2
Я использовал следующий код:
SELECT voto.DiaVotacao, IFNULL(COUNT(voto.Candidato_idCandidato),0) as Votos, candidato.Nome FROM candidato LEFT OUTER JOIN voto ON voto.Candidato_idCandidato=candidato.idCandidato ГРУППА ПО voto.DiaVotacao, voto.Candidato_idCandidato
Обратите внимание, что я хочу подсчитывать голоса за каждого кандидата за каждый день, и если голосов нет, появляется число 0, чтобы указать, что голосов нет, вы, ребята, поняли?