Как организовать бд?

В бд имеется таблица в которую записываются ответы пользователя на пройденный им тест.
ba29d3e6a76a4573910aa76120ccd2f7.png
Как организовать бд так что бы можно было определить, что например 5 записей относится к тесту №1, 3 записи к тесту 2, и т.д. ?
  • Вопрос задан
  • 174 просмотра
Пригласить эксперта
Ответы на вопрос 2
@mamayama
Ничего не нужно организовывать.
Это и так легко определяется через Group By или через Where - смотря что вам нужно.
Ответ написан
idShura
@idShura
Вот так например это можно определить:
-- Получишь все записи которые относятся к тесту №1
select * from t1 where  question_id = 1;

-- Получишь все записи которые относятся к тесту №2
-- и пользователю с идентификатором 12
select * from t1 where  question_id = 2 and user_id = 12;


В твоей таблице есть проблема. Если пользователь более одного раза ответить на тест, то ты не сможешь отличить эти строки. Нужно еще одно поле добавить в твою таблицу, что-то типа идентификатора сессии в которой пользователь отвечает на тест.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы