$ db-> update () возвращает поврежденное количество строк.
Нет метода Zend_DB для вставки ... при обновлении дублированного ключа ..., поэтому следует использовать метод query ():
$ result = $ db-> query ('INSERT INTO table (key, field) ВЫБРАТЬ val1, val2 ИЗ таблицы как t2 ON DUPLICATE KEY UPDATE field = VALUES (field)');
Чтобы узнать количество затронутых или вставленных записей:
$ Result-> сверка ()
Но этот метод также подсчитывает все записи, которые были обновлены с тем же значением.
Мне нужно знать все действительные затронутые (измененные) записи.
Спасибо!