De tidigare värdena inte vara densamma, eftersom tiden är annorlunda. Tyvärr.
Du kan göra detta med insert . . . select
syntax. Tanken är att välja den sista raden som infogades och använda en where
klausul för att filtrera raderna. Filtret returnerar inga rader (och därmed ingen infogning) när värdena är desamma:
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;