Poprzednie wartości nie bądź taki sam, bo czas jest inny. Niestety.
Możesz to zrobić za pomocą insert . . . select
składnia. Chodzi o to, aby wybrać ostatni wstawiony wiersz i użyć where
klauzula do filtrowania wierszy. Filtr nie zwróci żadnych wierszy (a tym samym wstawek), gdy wartości są takie same:
insert into AeroSamples(temperature, pressure, humidity)
select :t, :p, :h
from (select temperature, pressure, humidity
from AeroSamples
order by id desc
limit 1
) as1
where as1.temperature <> :t or as1.pressure <> :p or as1.humidity <> :h;