Всем привет. Есть задача: нужно импортировать в базу данные из csv, при этом при нахождении дубля обновлять, а при отсутствии вставлять. Дубль, нужно искать по 2-м полям, к примеру from и condition - это строки. Проблема заключается в том, чтобы запихнуть в одни запрос. В гугле предлагают пройтись циклом по массиву и для каждого делать UPDATE - мне не подходит, так как в файле может быть несколько тысяч строк. Есть вариант DUPLICATE KEY UPDATE - но он работает, как я понял, только с PRIMARY KEY. Какие есть варианты? Буду очень благодарен.
Я правильно понимаю, ON DUPLICATE KEY UPDATE и далее идёт перечисление у полей которые будут составлять тот самый индекс, пример: ON DUPLICATE KEY UPDATE from=VALUES(from), condition=VALUES(condition) ?
Да, пробовал читать. Но были неясности в понимании работы, для этого я сюда и написал.
В итоге задал полю from - индекс, и теперь в расчёт идёт не primary key, а именно оно.