У меня есть «вопросы» за столом с колоннами
USERID
QID (вопрос ID)
ответаMySql количество запросов и отчетливый
вопросами являются множественным выбором, так не каждый вопрос имеет такое же количество ответов через пользователь может выбрать.
вопрос 100 может иметь 4 ответа на выбор.
вопрос 200 может иметь 6 ответов на выбор.
вопрос 300 может иметь 2 ответа на выбор.
и т.д.
Так что таблица может выглядеть следующим образом:
+-------- --+---------+--------+
| userid | qid | answer |
+---- ------+---------+--------+
| 1 | 100 | 4 |
| 1 | 200 | 6 |
| 1 | 300 | 1 |
| 1 | 400 | 4 |
| 2 | 100 | 1 |
| 2 | 400 | 6 |
| 3 | 200 | 4 |
| 3 | 400 | 4 |
| 3 | 100 | 1 |
| 4 | 100 | 1 |
| 4 | 400 | 6 |
| 5 | 200 | 1 |
| 5 | 400 | 6 |
+-----------+---------+--------+
Я хочу знать, что счетчик для наиболее данного ответа на вопрос 100, то, что отсчет для второго самого высокого ответа на вопрос 100, каков счет для 3-го наивысшего ответа на вопрос 100 и т. д.
Я не могу понять, как запросить это и не уверен, что это возможно. Я бы результаты, чтобы быть что-то вроде:
+------+----+----+----+----+----+----+----+
| qid |ans1|ans2|ans3|ans4|ans5|ans6|ans7|
+------+----+----+----+----+----+----+----+
| 100 | 3 | 0 | 0 | 1 | 0 | 0 | 0 |
| 200 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| 300 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
| 400 | 0 | 2 | 0 | 0 | 0 | 3 | 0 |
+------+----+----+----+----+----+----+----+
спасибо! это сработало. Еще один вопрос: как бы добавить еще один столбец, который показывает, сколько раз в целом на вопрос был дан ответ? – altoids
Я обновил ответ –
Есть ли способ сортировки столбцов ans1, ans2 и т. Д. В порядке убывания? Сначала показывает столбец с наивысшим числом? – altoids