У меня есть такая таблица:
email (primary-key) | first_contact_date | last_contact_date | due_date | status
Пользователь может загрузить в таблицу таблицу Excel из другого приложения. Эксель содержит:
email | first_contact_date | last_contact_date
После загрузки пользователь может изменить (обновить) статус и дату выполнения.
Однако примерно раз в неделю пользователь будет загружать последнюю электронную таблицу Excel, содержащую новые И старые записи. Другими словами, некоторые строки уже существуют в таблице и над ними уже работали.
По этой причине мы не можем удалить существующие записи. Вместо:
- если запись новая, вставьте
- если запись уже существует в таблице (т.е. электронная почта существует), нам нужно обновить last_contact_date
Электронная таблица Excel может содержать от 1000 до 50 000 строк.
Каков наиболее эффективный подход к вставке записей в Oracle?? В mySQL я просто использовал пакетную вставку с «обновлением дубликатов», но у Oracle нет этой функции.
Какой подход лучше выбрать??
Любая помощь приветствуется.
MERGE
. Но вы спрашиваете о необработанном операторе SQL или эту функциональность нужно использовать через вашу структуру? - person Jon Heller   schedule 11.08.2019