Вопрос MYSQL ON DUPLICATE KEY UPDATE

Я немного смущен относительно того, что делает ON DUPLICATE KEY UPDATE . Я ищу что-то, что будет проверять команду INSERT INTO SQL, и если какая-либо строка является дубликатом, не обновляйте эту строку. Теперь, если что-либо в этой строке не является дубликатом (но некоторые из них), я бы хотел заменить эту строку обновленной информацией.

Возможно ли это, используя базовый MYSQL, или мне придется сначала вытащить все данные, а затем перекрестно проверить его. Я бы предпочел не делать этого, поскольку все, что я пытаюсь сделать, – это кэшировать приличное количество данных один раз в день.

"INSERT INTO years (date,year,venue,city,state,country,showid) VALUES (?,?,?,?,?,?,?)"

Related of "Вопрос MYSQL ON DUPLICATE KEY UPDATE"