Friday, January 7, 2011

Add record to a history table in case when data was changed

insert into History
values (F1, F2, F3)
select
   @New_F1_Val as F1,
   @New_F2_Val as F2,
   @New_F3_Val as F3
except
select * from
  (
    select top 1 F1, F2, F3
    from History
    order by At desc
  ) x

this code will add nothing to the History table in case when most recent record equals to the new values