MSSQL Вставить значения из таблицы2 в таблицу1, используя условие из таблицы2 - PullRequest
0 голосов
/ 07 мая 2019

У меня есть две таблицы: table1 и table2 Мне нужно перенести некоторые данные из table2 в table1 путем сопоставления или использования условия из обеих таблиц. Что мне нужно, это что-то вроде:

INSERT INTO Tbl1(VAR1,VAR2)
SELECT VAR1, VAR2 
FROM Tbl2
WHERE Tbl1.Name = Tbl2.Name and Tbl1.City = Tbl2.City

У меня есть пример схемы здесь

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

Кажется, вам нужно обновить, а не вставить

update Tbl1

set Tbl1.VAR1= Tbl2.VAR1,
    Tbl1.VAR2= Tbl2.VAR2

FROM Tbl2 join Tbl1 
on Tbl1.Name = Tbl2.Name and Tbl1.ADDRESS = Tbl2.ADDRESS

демо в одну строку

0 голосов
/ 07 мая 2019

Вы можете использовать внутреннее объединение для выбора правильного результата из обеих таблиц

  INSERT INTO Tbl1(VAR1,VAR2)
  SELECT VAR1, VAR2 
  FROM Tbl2
  INNER JOIN tbl1 ON Tbl1.Name = Tbl2.Name 
  and Tbl1.City = Tbl2.City
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...