0
DECLARE @origSiteID int = 836,
        @newSiteID int = 838

INSERT INTO Rooms (Name, SiteID, ControlsSiteNum, ControlsRoomNum, IsActive)
SELECT 
        Name, SiteID, ControlsSiteNum, ControlsRoomNum, IsActive
FROM Rooms
WHERE SiteID = @origSiteID

上記のコードは次のことを行います。

ID  Name    SiteID  ControlsSiteNum ControlsRoomNum IsActive
2025    E Terminal  838 63900   63901   1
2026    ARPT Kitchen    838 63900   63902   1
2027    ARPT Mgr    838 63900   63903   1
2028    W Terminal  838 63900   63904   1

からすべての部屋をテーブルに挿入してorigSiteIDRoomsます。ここで、挿入された 4 つの部屋を@newSiteID!!にマッピングする必要があります。updateステートメントは仕事をしますか?部屋を any から any にマップするにはどうすればorigsiteIDよいnewSiteIDですか?

この質問には回答がありましたが、さらに一歩進めたいと思います。これをさらに一歩進めたいと思います。作成されたすべての部屋について、元の部屋 ID とそれに相当する新しい部屋 ID を含むマップを作成したいと考えています。ありがとうございました。

4

1 に答える 1