我需要更新名为" TravelAgencyID2"的列中的值。 in" dbo.ReservationStay"基于列" TravelAgencyTypeCode"的值" dbo.TravelAgency"。
更新的条件如下:如果dbo.TravelAgency中的TravelAgencyTypeCode与DMC'不相等,则TravelAgencyID2 = TravelAgencyID(来自dbo.ReservationStay),ELSE TravelAgencyID2保持不变。
答案 0 :(得分:1)
那么,您只需要更新那些行 WHERE 满足条件吗?
UPDATE rs
SET rs.TravelAgencyID2 = rs.TravelAgencyID
FROM ReservationStay rs
INNER JOIN TravelAgency ta on rs.TravelAgencyID2 = ta.ID
WHERE ta.TravelAgencyTypeCode != 'DMC'
这只会更新您需要的行,而不会触及任何其他行。