親タプルから子タプルに値をコピーするエレガントな方法を探しています。親の値とは無関係に変更できるため、コピーする必要がありますが、それが開始するベースラインです。
以下は、テーブルの簡略化されたバージョンです。
CREATE TABLE Parent (
Id INT NOT NULL PRIMARY KEY,
ParentValue VARCHAR(128)
);
CREATE TABLE Child (
Id INT NOT NULL PRIMARY KEY,
ParentId INT NOT NULL FOREIGN KEY REFERENCES Parent(Id),
ChildValue VARCHAR(128)
);
今私がやろうとしていることはこれです:
UPDATE Child
SET ChildValue = Parent.ParentValue
WHERE TRUE
それは理にかなっていますか?ループする方法がありますが、実行する予定の多数のレコードに対して効率的ではないようです。