У меня есть таблица в БД Oracle, скажем, таблица Студента. StudentID - это первичный ключ в таблице. У меня есть еще один столбец с интересующими субъектами, скажем, имя столбца интересуется_SUB. Студент может иметь более одного заинтересованного предмета. В этом случае у меня есть следующие 2 варианта:
1) Наличие столбцов StudentID и Interested_SUB в качестве составного первичного ключа.
В этом случае, например, если студент заинтересован в 3 предметах, у меня будет 3 строки в таблице с (S1, SUB1) (S1, SUB2) и (S1, SUB3) в качестве значений столбцов, а все остальные столбцы будут иметь одинаковые значения. значения для этих трех строк.
2) Иметь отдельную таблицу со столбцами StudentId и Interested_SUB и дополнительный столбец в первой таблице, чтобы указать, заинтересован ли учащийся в нескольких предметах.
В этом случае я добавлю по одной строке для каждого учащегося в таблице учеников с studentId и SUB как (S1, SUB1), а также с новым столбцом индикатора как «Y». Во второй таблице (S1, SUB2) & (S1, SUB3).
Подскажите, пожалуйста, какой из перечисленных вариантов увеличивает производительность БД.
Заранее спасибо