У меня есть три таблицы tblSubject
, tblSubjectGroup
и tblSubjectGroupDetails
.
tblSubject
таблица содержит следующие столбцы:
subId (PK, char(36), not null)
subName (varchar(50), not null)
tblSubjectGroup
таблица содержит следующие столбцы:
subGroupId (PK, char(36), not null)
subGroupName (varchar(50), not null)
tblSubjectGroupDetails
- таблица моста междуПриведенные выше таблицы, имеющие отношение многие ко многим:
subGroupId (FK, char(36), not null)
subId (FK, char(36), not null)
Я поместил в эти таблицы следующие фиктивные данные:
tblSubject :
Английский язык, математика, физика, химия, наука, биология, экономика, география, история
tblSubjectGroup :
Group1, Group2, Group3
Group1
связан с English, Mathematics and Biology
Group2
связан с Geography, History and Economics
Group3
связан с Physics, Chemistry and Science
Здесь я хочу обновить Group2
следующими темами: Geography, History, Science.
(Вставка и удаление - это хорошо для меня, но я не могу понять, как обновить таблицу мостов)
UPDATE tblSubjectGroupDetails
SET subId = '......'
WHERE subGroupId = '......'
Вышеприведенное утверждение изменит все субъекты конкретной субъектной группы.Я хочу изменить только экономику на науку для группы 2.
Кстати, я забыл упомянуть, что tblSubjectGroupDetails
имеет составной первичный ключ.
Как я могу сделать это в SQL Server?