1

SQL サーバー管理ツール 2008 を使用して、データを Web ホスト データベースにインポートしています。主キーを持つテーブルがあります。(各行のID)これで、データを正常にインポートできます。しかし、2回目にデータをインポートするとき..現在存在しない行のみを確認する必要があり、それが挿入されます。ウィザードを使用してこれを行う必要がある場合は? そうでない場合、ベストプラクティスは何ですか?

4

2 に答える 2

1
  1. データを一時テーブルに挿入します
  2. メインテーブルとの左結合を使用して、挿入するレコードを識別します

-

CREATE TABLE T1(col1 int)
go

CREATE TABLE Temp(col1 int )
go

INSERT INTO T1
SELECT 1 
UNION 
SELECT 2

INSERT INTO TEMP
SELECT 1 
UNION 
SELECT 2
UNION 
SELECT 3 
UNION 
SELECT 4 

INSERT INTO T1 
SELECT TEMP.col1
FROM Temp 
LEFT JOIN T1 
  ON TEMP.col1 = T1.col1
WHERE T1.col1 IS NULL 
于 2013-02-09T20:09:07.073 に答える
0

私はこれをしばらく前に使用しました、多分それは助けることができます:

insert into timestudio.dbo.seccoes (Seccao,Descricao,IdRegiao,IdEmpresa)
  select distinct CCT_COD_CENTRO_CUSTO, CCT_DESIGNACAO, '9', '10' from rhxxi.dbo.RH_CCTT0 
  where CCT_COD_CENTRO_CUSTO not in (select Seccao from TimeStudio.dbo.Seccoes where idempresa = '10')

または、単純なIFステートメントを使用します。

于 2013-02-09T19:50:52.933 に答える