2017-03-29 36 views
0

我正在使用批量插入語句將批處理.csv文件導入到表中的項目上工作。帶有批量插入的SQL Server語句

我遇到的問題是,有些記錄與當前正在查找的表中的數據重複。有沒有辦法通過批量插入來運行語句來檢查基於特定條件的與文件行相匹配的特定行?

我相信有一種方法可以使這項工作,只是沒有我想到的。

+0

我敢肯定,我們已經具備了這種情況的地方......其他的方式將只需插入並刪除重複項 – maSTAShuFu

+0

有沒有可用於在一批中搜索和刪除重複項的查詢? – William

+0

通過count()> 1來查找重複項 – maSTAShuFu

回答

0

沒有,BULK INSERT聲明是爲原始速度優化 - 它只是會插入儘快數據 - 但它並沒有允許檢查或決定,而進口進行。

在這種情況下,通常的做法是將數據批量插入臨時表,然後在完成之後,僅將那些不重複的行復制到實際數據表中並丟棄其他所有內容。

但是,這是一個獨立的一步 - 能不能做到批量插入....

+0

感謝您的反饋。我是一個sql的初級水平。是否有一個查詢可用於搜索批量數據行,並打印所有重複項,或刪除基於匹配列標準的重複項? – William