私は2つのテーブルを持っています。一方のテーブル (A) には n 行のデータがあり、もう一方のテーブル (B) は空です。テーブル B に n 行、テーブル A の各行に 1 行を挿入したい。テーブル B には、テーブル A の外部キーを含む、テーブル A のフィールドがいくつかあります。 Aの各行に対して.これを行うためにTSQLを作成するにはどうすればよいですか?
質問する
580 次
4 に答える
4
INSERT INTO TableB (ColA, ColB, ColC)
SELECT ColA, ColB, ColC
FROM TableA
Pinal Dave は、他の代替方法に関する素晴らしい記事をここに書いています。
于 2012-11-20T15:14:50.343 に答える
1
私があなたを正しく理解していれば、次のようなものを使用する必要がありますSELECT INTO
:
http://www.w3schools.com/sql/sql_select_into.asp
于 2012-11-20T15:15:08.467 に答える
1
あなたはこれを行うことができます:
;WITH CTE
AS
(
SELECT *, ROW_NUMBER() OVER(ORDER BY PrimaryKey) row_num
FROM tableA
)
INSERT INTO Tableb(...)
SELECT ...
FROM CTE
WHERE row_num = 1;
于 2012-11-20T15:15:30.093 に答える
1
これは、次のクエリを使用して実行できます。
INSERT INTO B(PriKey, RelationshipWithA, Description)
SELECT ROW_NUMBER(), A.PrimaryKey, A.Description
FROM A
より適切な例が必要な場合は、入力したい特定のテーブル名と列を提供してください。
于 2012-11-20T15:16:26.360 に答える