Я хочу сделать SQL-запрос, который будет вставлять значения из одной таблицы в другую, проверяя, где условие на 1-й таблице.
Я должен проверить, присутствует ли ранее эта строка в первой таблице или нет. Если нет, добавьте, иначе не добавляйте.
В sql есть запрос "вставить в шаблон выбора".
Я пробовал следующий запрос. Но он вставляет много дубликатов.
INSERT INTO
company_location (company_id, country_id, city_id)
SELECT
ci.company_id, hq_location, hq_city
FROM
company_info ci, company_location cl
WHERE
ci.company_id <> cl.company_id
AND cl.country_id <> ci.hq_location
AND cl.city_id <> ci.hq_city;
Избегание дублирования означает, что кортеж (company_id, country_id, city_id) не должен добавляться снова. И я должен добавить еще 4 таблицы в эти таблицы.
Также мне требуется запрос на удаление дубликатов из company_location. то есть комбинация (company_id, country_id, city_id) должна существовать только один раз. Оставьте только один кортеж и удалите другие строки.