Обновить / добавить из одной таблицы в другую

В базе данных имеется две таблицы table_A и table_B.

table_A:

id |  Vendor |   Model     |   Size    | Type 
 1 |  ASUS   |   A68HM     | Micro-ATX | AMD
 2 | GIGABIT | GA-A320M-S2 | Micro-ATX | AMD
 3 |   MSI   | A320M PRO-E | Micro-ATX | AMD

table_B:

 id | Vendor  | Model  
  1 | Biostar | A68MHE
  2 | ASRock  | A320M-DVS
  3 | ASRock  | H110M-DGS
  4 |  MSI    | A320M PRO-E

Необходимо забрать данные из table_B и поместить в table_A, сравнивая значения по столбцу Model, если в table_A есть такая модель - не добавлять запись, нету модели - добавить строку. В итоге должно быть на выходе так table_A:

id |  Vendor |     Model    |   Size    | Type 
 1 |  ASUS   |     A68HM    | Micro-ATX | AMD
 2 | GIGABIT |  GA-A320M-S2 | Micro-ATX | AMD
 3 |   MSI   |  A320M PRO-E | Micro-ATX | AMD
 4 | Biostar |     A68MHE   |           |     
 5 | ASRock  |   A320M-DVS  |           |    
 6 | ASRock  |   H110M-DGS  |           |     

Пытался реализовать запросом:

INSERT INTO table_A (Model, Vendor) 
SELECT Model, Vendor FROM table_B
WHERE Model NOT IN (SELECT Model FROM table_A)

Пишет, что 0 записей изменено.

Что не так, подскажите, пожалуйста.

Большое спасибо!


Ответы (1 шт):

Автор решения: Alex Rebell

Как говориться: Не прошло и пол года. Вроде такой запрос работает хорошо:

INSERT INTO table_A (Model, Vendor) 
SELECT table_B.Model, table_B.Vendor FROM table_B
WHERE table_B.Model NOT IN 
(SELECT Model FROM table_A WHERE Model IS NOT NULL)
→ Ссылка