ОК, поэтому в своих ответах и комментариях вы описали два совершенно разных сценария.
Если это конструктор форм для тестов алгебры и описан в вашем примере, пожалуйста, прочитайте
здесь . EAV очень соблазнительный, но вы заплатите огромную цену за использование обычной СУБД для построения этой модели.
Тем не менее,
Если это медицинские записи, как вы говорите в комментарии. Это другая игра в мяч. Медицинские карты причудливы, потому что существует по существу неограниченное количество симптомов и значительное отсутствие симптомов. Скажем, у вас хирургическая рана и у вас жар. Это может указывать на инфекцию. Если на ране нет покраснения, припухлости, нежности или дренирующего гноя, это означало бы значительное отсутствие симптомов.
Подумайте о медицинских записях, таких как Facebook. Когда вы посещаете страницу друга, в базе данных есть PK для этого человека, а затем он получает все. Вы обычно не делаете подсчет пользователей по родному городу и женаты, например. Этот запрос - боль против EAV. То же самое с медицинскими записями. Пациент 123 появляется, вам просто нужна его / ее диаграмма. Вам не нужно задавать вопросы всем, кто имеет 6 симптомов. (Кстати, это происходит в исследованиях, но эти записи EAV должны быть отфильтрованы, повернуты и преобразованы в более 3nf формат.)
Если вы ведете медицинские записи, я бы посмотрел некоторые новые СУБД EAV, разработанные специально для медицинских записей.