Sql 如果不存在,则插入到表中,然后将重复记录插入到另一个表中
在过去的两天里,我正在编写一个存储过程,但我无法理解它 任务:我有一个表“table 1”,其中有一些行以“Appointment No”作为主要ID 还有另一个表“表1\u copy”,它与表1相同,不需要主键 我想在“表1”中插入“名字”和“姓氏”。但是,如果该记录已存在于“表1”中,则应将这些dup记录插入“表1”中,并将非dup记录插入“表1” 因此,简而言之,我在“表1”中插入新的“约会编号”的新记录,并将表1中已经存在的重复约会编号插入表1\u副本 我可以找出插入到如果不存在的部分,但我正在努力捕获DUP并插入到“表1_copy”中 请帮帮我Sql 如果不存在,则插入到表中,然后将重复记录插入到另一个表中,sql,sql-server-2008,stored-procedures,Sql,Sql Server 2008,Stored Procedures,在过去的两天里,我正在编写一个存储过程,但我无法理解它 任务:我有一个表“table 1”,其中有一些行以“Appointment No”作为主要ID 还有另一个表“表1\u copy”,它与表1相同,不需要主键 我想在“表1”中插入“名字”和“姓氏”。但是,如果该记录已存在于“表1”中,则应将这些dup记录插入“表1”中,并将非dup记录插入“表1” 因此,简而言之,我在“表1”中插入新的“约会编号”的新记录,并将表1中已经存在的重复约会编号插入表1\u副本 我可以找出插入到如果不存在的部分,
提前感谢类似于以下内容的内容应该会起作用:
IF NOT EXISTS (SELECT * FROM table_1 WHERE FirstName=@FirstName AND LastName=@LastName)
INSERT INTO table_1 ...
ELSE
INSERT INTO table_1_copy ...
类似于以下的东西应该会起作用:
IF NOT EXISTS (SELECT * FROM table_1 WHERE FirstName=@FirstName AND LastName=@LastName)
INSERT INTO table_1 ...
ELSE
INSERT INTO table_1_copy ...
我想你可以像下面这样做
IF NOT EXTIST (SELECT 'X' FROM TABLE1 WHERE FirstName = @FirstName AND LastName = @LastName)
BEGIN
INSERT INTO TABLE1 (BLAH, BLAH)
END
ELSE
INSERT INTO TABLE1_COPY
SELECT BLAH, BLAH FROM TABLE1 WHERE FirstName = @FirstName AND LastName = @LastName
END
我想你可以像下面这样做
IF NOT EXTIST (SELECT 'X' FROM TABLE1 WHERE FirstName = @FirstName AND LastName = @LastName)
BEGIN
INSERT INTO TABLE1 (BLAH, BLAH)
END
ELSE
INSERT INTO TABLE1_COPY
SELECT BLAH, BLAH FROM TABLE1 WHERE FirstName = @FirstName AND LastName = @LastName
END
您的一些措辞给我的印象是您的SP试图保存一组记录。是这样,还是您只提供了一个名/姓?您的一些措辞给我的印象是您的SP试图保存一组记录。是这样,还是您只提供了一个名/姓?