2つの同一のテーブルがあり、テーブルから別のテーブルに行をコピーする必要があります。それをする最善の方法は何ですか? (私はプログラム的にいくつかの行をコピーする必要がある、私は一括コピーユーティリティを使用する必要はありません)。1つのSQL Serverテーブルから別のSQL Serverテーブルに行をコピーする方法
答えて
限り何のID列が存在しないようすることができますだけで
INSERT Table2
SELECT * FROM Table1
WHERE [Conditions]
代替構文:
INSERT tbl (Col1, Col2, ..., ColN)
SELECT Col1, Col2, ..., ColN
FROM Tbl2
WHERE ...
(もちろん)は、式、case文、定数を含むことができ、選択クエリ/リテラルなど
これは、テーブルがわずかに異なる場合に最適です。 2番目のテーブルにいくつか余分な列があり、一致する必要があるので、受け入れられた答えはMSSQLでは機能しません。 –
INSERT INTO DestTable
SELECT * FROM SourceTable
WHERE ...
はSQL Serverで動作します
これは、DestTableが存在しない場合にのみ機能します。このクエリの前にDestTableが作成されていると、エラーが発生します。 –
実際には、宛先テーブルが存在しない場合は失敗します。既存のDestTableが空でない場合、エラーが発生する可能性があります。 – Kaniu
Jarrettの回答が新しいテーブルを作成します。
スコットの答えは、同じ構造の既存のテーブルに挿入されます。
また、異なる構造を持つテーブルに挿入することができます
INSERT Table2
(columnX, columnY)
SELECT column1, column2 FROM Table1
WHERE [Conditions]
@ScottStonehouse:あなたがこのような答えを他のすべてのものとして集めた場合、コードを使って(包括的に)、あなたは最高の答えになるはずです。 –
- 1. 1つのSQL Serverテーブルのすべての行を別のSQL Serverのテーブルにコピーする方法
- 2. IDを持つ1つのテーブルを別のSQL Serverにコピーする方法
- 3. Android 1つのSQLテーブルから別のSQLテーブルに行をコピーする
- 4. SQL ServerからMySQLにテーブルをコピーする方法は?
- 5. 1つのSQL Serverテーブル内の別の行と行の比較
- 6. SQL Serverのテーブル行
- 7. テーブルからSQL Serverの挿入行に
- 8. SQL Serverの - 別のテーブル
- 9. SSIS MySQLテーブルをSQL Serverにコピーする
- 10. SQL Serverテーブルを別のテーブルでフィルタリングする方法は?
- 11. OracleテーブルからSQL Serverテーブルにデータをプッシュする方法は?
- 12. SQL Server:テーブルの行を同じテーブルにコピー
- 13. SQL Serverテーブルから同じテーブルにデータをコピー
- 14. あるSQL Serverから別のSQL Serverにテーブルを転送する最も良い方法は何ですか?
- 15. SQL Serverテーブルから別のテーブルにデータをインポート
- 16. OLTP SQL Serverデータベースから別のレポートSQL Serverデータベースにテーブルをレプリケート/コピーしますか?
- 17. SQL Serverの二つのテーブル
- 18. SQL Serverの2つのテーブル
- 19. SQL Server:あるテーブルから別のテーブルへのINSERT
- 20. テーブルが変更されたときに1つのSQL Serverデータベースから別のSQL Serverデータベースに行をコピーする
- 21. SQL Server 2005で1つのテーブルからデータをピボットする方法
- 22. SQL Server 2012の別のテーブルの複数のテーブル行から1つのテーブル行にデータを挿入する方法はありますか。
- 23. 1つのSQL Serverテーブルで2行をマージする
- 24. SQL Server 2012テーブルのデータを別のテーブルにコピーする(新しいテーブルに1カラム追加)
- 25. SQL Server別のテーブルの1つのテーブルのトップレコードを選択します。
- 26. SQL Server - あるサーバーのテーブルデータをAzure SQLデータベースのテーブルにコピー
- 27. SQL Serverは - SQL Server内の同じテーブル
- 28. SQL Serverの別のテーブルから更新されたデータ(値)を持つ1つのテーブルからxmlを選択
- 29. SQL Serverからlinqの1つのテーブルへのlinqクエリ
- 30. SQL Server 2005のデータベースからすべてのテーブルを1つのテーブル以外のステートメントにドロップする方法
この構文は、Table2にID列がある場合にはうまく動作しないので、Table2が同期して変更されずにTable1が変更された場合、将来破損します。この解決法は、あなたのケースには完璧かもしれませんが、これらの考慮点に留意してください。 –
挿入しようとしているテーブルのID列を一時的に無効にするには、 'SET IDENTITY_INSERT < table > ON'(および' SET IDENTITY_INSERT < table > OFF')を使用できます。データセットの途中でいくつかの不足しているレコードを復元しようと私のために働いた。 – nickb
table1の主キーがtable2に外部キーとして存在する場合はどうなりますか?私は同じことを持っていると私は何をすべきかわからない..テーブル2のidの外来キー "Technology_idTechnology"とテーブル1で、それは "idTechnology"としてそこにあるtable1からすべてのエントリをコピーしたいidTechnologyが両方のテーブルで一致する場合は、table2。 – ZelelB