У меня есть две схемы и таблица в каждой схеме.Стол называется «концепт».Одна схема является схемой "cdm", а другая - схемой "vocab".
Я хотел бы скопировать записи из таблицы "concept" схемы "vocab" в таблицу "concept" схемы "cdm", основанную на определенных условиях
У таблицы понятий есть первичный ключ, называемый concept_idи несколько других неосновных столбцов.
Пример: vocab.concept имеет 200 записей.Я хотел бы копировать только те записи, которые удовлетворяют условию, например concept_id> 150
. В настоящее время таблица концепций в схеме CDM (cdm.concept) заполнена 150 записями.Итак, я хотел бы добавить / вставить остальные 50 записей (это concept_id> 150)
Можете ли вы дать мне знать, как я могу сделать эту копию или игнорировать дубликаты и копировать только новые записи (т.е.добавлено 50 записей)
INSERT INTO cdm.concept(concept_id,Name,Age,Info)
SELECT concept_id,Name,Age,Info
FROM vocab.concept
where concept_id > 150;
Вопросы
Правильно ли это выше sql?
Это единственный способ, потому что в моей таблице может быть более 25 столбцов, и я не хочу вводить имена столбцов каждый раз, когда хочу скопировать.
Обратите внимание, что таблица уже существует в схеме cdm.Поэтому я не хочу использовать подход «Создать таблицу»