相关疑难解决方法(0)

如果不存在SQL Server插入最佳实践

我有一个Competitions结果表,一方面保存团队成员的名字和他们的排名.

另一方面,我需要维护一个独特的竞争对手名称表:

CREATE TABLE Competitors (cName nvarchar(64) primary key)
Run Code Online (Sandbox Code Playgroud)

现在我在第一个表中有大约200,000个结果,当竞争对手表空时,我可以执行此操作:

INSERT INTO Competitors SELECT DISTINCT Name FROM CompResults
Run Code Online (Sandbox Code Playgroud)

查询只需要大约5秒钟就可以插入大约11,000个名称.

到目前为止,这不是一个关键应用程序,因此我可以考虑每月截断一次竞争对手表,当我收到大约10,000行的新竞争结果时.

但是,当新的和现有的竞争对手增加新的结果时,最佳做法是什么?我不想截断现有的竞争对手表

我只需要为新的竞争对手执行INSERT语句,如果它们存在则不执行任何操作.

sql-server insert-update

148
推荐指数
5
解决办法
32万
查看次数

标签 统计

insert-update ×1

sql-server ×1