У меня есть две таблицы в SQL Server, как следует, которые связаны между собой через FK SOPGroupsID: -Копирование данных из одной таблицы в другую
CREATE TABLE [dbo].[SOPGroups](
[SOPGroupsID] smallint NOT NULL IDENTITY(1,1),
[SOP_Group] varchar(200) NOT NULL UNIQUE,
PRIMARY KEY CLUSTERED (SOPGroupsID));
GO
CREATE TABLE [dbo].[SOPTitle](
[SOPGroupsID] smallint DEFAULT 1 NOT NULL,
[SOPTitleID] smallint NOT NULL IDENTITY(1, 1),
[SOP_Title] varchar(300) NOT NULL UNIQUE,
PRIMARY KEY CLUSTERED (SOPTitleID));
GO
--add relationship between tables SOPGroups and SOPTitle
ALTER TABLE [dbo].[SOPTitle] ADD CONSTRAINT [R1] FOREIGN KEY(SOPGroupsID)
REFERENCES [dbo].[SOPGroups] (SOPGroupsID)
ON UPDATE Cascade
ON DELETE Set default;
GO
Я импортировать данные из файла первенствовать которых первый шаг является импортировать excel файл во временную таблицу на SQL-сервере, а затем импортировать данные в приведенные выше таблицы, удаляя повторяющиеся записи. Я вставляю SOP группы данных следующим образом в таблице SOPGroups: -
INSERT INTO [dbo].[SOPGroups] (SOP_Group)
SELECT DISTINCT SOP_Group FROM [dbo].['Onthology Return$'] t
WHERE NOT EXISTS
(SELECT SOP_Group FROM [dbo].[SOPGroups] x WHERE x.SOP_Group = t.SOP_Group)
Моя проблема заключается в том, как вставить в таблицу [SOPTitle] и получить SOPGroupID из таблицы SOPGroups на основе имени SOP_Group, согласованное с отчетливым SOP_Title от временная таблица 'Onthology Return $'.
INSERT INTO [dbo].[SOPTitle] (SOPGroupsID, SOP_Title)
SELECT DISTINCT SOP_Group, SOP_Title FROM [dbo].['Onthology Return$'] t