【发布时间】:2015-01-08 03:06:59
【问题描述】:
CREATE TABLE [CandidateDocsAssociation](
[Row_ID] [bigint] IDENTITY(1,1) NOT NULL,
[Doc_ID] [bigint] NOT NULL,
[Candidate_ID] [bigint] NOT NULL,
) ON [PRIMARY]
GO
我有上面的表结构来存储文档和候选人之间的关联。 Row_ID 是自动生成的主键。 Doc_ID 是引用文档表的外键。 Candidate_ID 也是引用 Candidates 表的外键。
一个候选者可以关联多个文档,一个文档可以关联多个候选者。
如果 DOC_ID 为 2 的 Candidate_ID 行不存在,我想要实现的是为所有候选人 (DISTINCT) 插入一个默认的公共文档 (Doc_ID)。
下面是我正在尝试的,但它不起作用
WHILE EXISTS (SELECT DISTINCT Candidate_ID from CandidateDocsAssociation
WHERE Doc_ID <> (SELECT Doc_ID FROM Doc_Table WHERE Doc_Name = N'Default'))
BEGIN
INSERT CandidateDocsAssociation (Doc_ID, Candidate_ID) VALUES ((SELECT Doc_ID FROM Doc_Table WHERE Doc_Name = N'Default'),Candidate_ID)
END
GO
【问题讨论】:
标签: tsql sql-server-2005