Вставка отдельных записей в базу данных - PullRequest
0 голосов
/ 25 июня 2009

У меня есть две таблицы с одинаковыми полями. Таблица A содержит 7160 записей, а таблица B - 7130 записей. Теперь я хочу вставить отдельные записи из таблицы A в таблицу B так, чтобы в B не было повторяющихся записей. Как мне это сделать?

Ответы [ 3 ]

1 голос
/ 25 июня 2009

Это в основном выбирает записи, которые находятся в A, но не в B. Это будет работать, но вам, возможно, придется настроить поле, которое вы используете, чтобы однозначно идентифицировать запись. В этом примере я использовал поле 'ID', но вам, возможно, придется изменить его на A.field1 = B.field1 AND A.field2 = B.field2 и т. Д.

INSERT INTO TABLEB
(
SELECT A.*
FROM TABLEA A
LEFT JOIN TABLEB B ON A.ID = B.ID
WHERE B.ID IS NULL
)
1 голос
/ 25 июня 2009

Вы можете использовать запрос "объединение", чтобы объединить результаты из нескольких таблиц в один набор результатов. «union» возвращает только отдельные строки из всех таблиц.

См. Эту страницу для получения дополнительной информации:

http://www.tutorialspoint.com/mysql/mysql-union-keyword.htm

0 голосов
/ 25 июня 2009
insert into tableB (id)
select t1.id from tableA t1
where t1.id not in (select t2.id from tableB t2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...