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

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

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

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

CREATE TABLE Competitors (cName nvarchar(64) primary key)

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

INSERT INTO Competitors SELECT DISTINCT Name FROM CompResults

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

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

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

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


繁华开满天机
浏览 526回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server