mysql on duplicate key update
'ON DUPLICATE KEY UPDATE' — очень удобная функция для проверки строк по уникальному значению.
Например :
insert into statistic (`ip`,`os`) values ('1.1.1.2', 'Debian6') on duplicate key update time = now();
Имеем в таблице три столбца — ip , os , TIME ( TIMESTAMP ).
При совпадении первого уникального ( UNIQUE ) значения из запроса СУБД делает вместо инсерта UPDATE строки с этим значением с указанием ключей.
В нашем примере если у нас уже существует запись с ip = 1.1.1.2 , то у записи обновится поле time.