私は2つのテーブルを持っています。最初のテーブルの構造は部分的に要約され、2番目のテーブルの構造を繰り返します。
table1 (id, i, j, k, a, b, c, x, y, z) -- requests
table2 (id, a, b, c, d) -- essential elements / bank subjects
指定されたIDtable1
のレコードに挿入する必要があります。table2
それを行うための最良のアプローチは何ですか?
私には2つのアイデアがあります:
1:
DECLARE @a type, @b type, @c type
SELECT @a = a, @b = b, @c = c, FROM table2 WHERE id = @id
INSERT INTO table1 (i, j, k, a, b, c, x, y, z)
VALUES (@i, @j, @k, @a, @b, @c, @x, @y, @z)
2:
CREATE TABLE #result (a type, b type, c type)
SELECT a, b, c INTO #result FROM table2 WHERE id = @id
INSERT INTO table1 (i, j, k, a, b, c, x, y, z)
VALUES (@i, @j, @k,
(SELECT a FROM #result),
(SELECT b FROM #result),
(SELECT c FROM #result),
@x, @y, @z)
他にどのようなアプローチがありますか?どちらがベストプラクティスですか?