Я пытаюсь получить плоскую таблицу для вопросов и ответов с помощью mysql. Это мои таблицы.
PollQuestion
PollID | Question| A | B | C | D | E | TimeStamp
PollReponse
PollReponseID | PollID | UserID | Answer
В таблице PollAnswer
я получаю Пять ответов как VARCHAR
A, B, C, D, E
.
Я написал запрос, чтобы сгруппировать ответы по A, B, C, D, E
.
select q.Question
, q.PollID
, r.Answer
, count(r.Answer)
from pollQuestions q
, pollResponse r
where q.PollID = r.PollID
group
by r.Answer
, q.Question
, q.PollID
order
by r.PollID;
Что дает мне ответ следующим образом.
Question | PollID | Answer | count
alpha | 1 | A | 2
alpha | 1 | B | 3
alpha | 1 | C | 4
alpha | 1 | D | 0
alpha | 1 | E | 0
betas | 2 | A | 3
betas | 2 | B | 4
betas | 2 | C | 4
betas | 2 | D | 6
betas | 2 | E | 0
Я хочу сгладить ответ следующим образом.
Question | PollID | countA | countB | countC | countD | countE
alpha | 1 | 2 | 2 | 4 | 0 | 0
betas | 2 | 3 | 4 | 4 | 6 | 0
Могу ли я в любом случае добиться этого без изменения структуры таблицы?
Любой указатель будет оценен.