• Assuming that the column combination of ItemTypeID, Service and OrderID is UNIQUE, the below code should do what you need

    INSERT[dbo].[tblOrderItems]( [ItemTypeID], [OrderID], [Service] )

    SELECT[ItemTypeID], @newOrderId, [Service]

    FROM[dbo].[tblOrderItems] A

    WHEREA.OrderID = @OrderID

    INSERT#temp_result( OldOrderItemID )

    SELECTA.OrderItemID

    FROM[dbo].[tblOrderItems] A

    WHEREA.OrderID = @OrderID

    UPDATER

    SETR.NewOrderItemID = NOI.OrderItemID

    FROM#temp_result AS R

    INNER JOIN [dbo].[tblOrderItems] AS OOI

    ON R.OldOrderItemID = OI.OldOrderItemID

    INNER JOIN [dbo].[tblOrderItems] AS NOI

    ON OOI.ItemTypeID = NOI.ItemTypeID

    AND OOI.Service = NOI.Service

    AND NOI.OrderID = @newOrderId

    WHERER.NewOrderItemID IS NULL


    Kingston Dhasian

    How to post data/code on a forum to get the best help - Jeff Moden
    http://www.sqlservercentral.com/articles/Best+Practices/61537/