Update: LOAD Shipment_ID as Id, Actual_Delivery_Date as [Actual Delivery Date], Performance, Actual_Pickup_Date as [Actual Pickup Date], Shipment_Status as Status, Event as [Last Event], Event_Date as [Last Event Date]
Re: update a several columns based on values from other table
First load the records that need to be updated.
Left join the other 18 (25-7) fields from the database to those records
concatenate the 25 fields from the database using a WHERE NOT EXIST(Id)
If the left join consumes too much time to calculate, you could make two seperate tables for your problem, one containing the fields that need to be updated and first load the updated records and then the 'old' records. And just load the other fields from the database.