UPSERT в Memsql с другого стола
Я пытаюсь выполнить этот запрос, чтобы вставить некоторые записи из таблицы в другую, когда повторные записи еще не существуют в целевой таблице, но я получаю следующую ошибку: какой запрос лучше всего подходит для UPSERT в memsql из другой таблицы?
Запрос: INSERT INTO ema.device_set (сегмент_0, сегмент_1, сегмент_2, сегмент_3, сегмент_4, последнее_обновление) ВЫБРАТЬ tmp.segment_0, tmp.segment_1, tmp.segment_2, tmp.segment_3, tmp.segment_4, tmp.last_updted tmp_de_set_setup FROM eE. НЕ СУЩЕСТВУЕТ (ВЫБРАТЬ * ОТ вкладки ema.device_set, ГДЕ tmp.segment_0 = tab.segment_0 и tmp.segment_1 = tab.segment_1 и tmp.segment_2 = tab.segment_2 и tmp.segment_3 = tab.segment_3 и tmp.segment_4 = tab.segment_4);
ошибка: раздел не имеет главного экземпляра или ошибка листа: база данных будет доступна для запроса через 2 секунды после завершения восстановления с диска.
2 ответа
Это сообщение об ошибке означает, что ваши узлы не работают или восстанавливаются с диска. Это не имеет ничего общего с конкретным UPSERT, который вы пытаетесь сделать.
Убедитесь, что в вашем запросе нет нарушений правил MemSQL INSERT...SELECT, показанных по следующей ссылке.