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.

Tags:

Leave a Reply