【发布时间】:2015-11-13 06:28:44
【问题描述】:
我正在将数据输入 SQL Server 数据库,由于我无法控制的事情,每 1000 条记录中有 1 条是重复的。它是完全重复的 - 整个记录、唯一标识符 - 一切。
我知道这可以通过“更新”而不是插入步骤来解决……或者“错误时,更新”而不是插入,也许。
但是有没有一种快速简便的方法可以让 SQL Server 忽略这些重复项?我还没有创建索引/唯一约束——但如果我这样做了,我不希望“重复”键值破坏或中断 ETL/数据流过程。我只是让 SQL Server 继续执行插入查询。有没有办法做到这一点?
【问题讨论】:
-
@FirebladeDan 除了
mysqlsql-server. -
是的,我会将语法更改为 sql server 中的详细等效项 --- 我知道“概念”是一种可能性——我只是认为它有很多开销。
-
谢谢 .. 看起来 IGNORE_DUP_KEY 是查询时间方面最快的方法(也许)。如果将来出现任何严重的数据错误,可能会很危险,但很诱人。
标签: sql-server insert key duplicate-removal