Например, у Вас есть две простых таблицы: Employees с полями EmployeeID, FirstName и LastName и таблица NewData с аналогичными полями. CREATE TABLE Employees (
EmployeeID INT PRIMARY KEY,
FirstName VARCHAR(50),
LastName VARCHAR(50)
);
-- Заполнение таблицы Employees данными (табл_1)
INSERT INTO Employees (EmployeeID, FirstName, LastName)
VALUES (1, 'John', 'Doe'),
(2, 'Jane', 'Smith'),
(3, 'Alice', 'Johnson');
-- Создание таблицы NewData
CREATE TABLE NewData (
EmployeeID INT PRIMARY KEY,
FirstName VARCHAR(50),
LastName VARCHAR(50)
);
-- Заполнение таблицы NewData данными (табл_2)
INSERT INTO NewData (EmployeeID, FirstName, LastName)
VALUES (2, 'Jane', 'Peterson'),
(4, 'Sarah', 'Williams'); Вы хотите обновить существующие данные в основной таблице Employees и добавить новые, на основании содержимого таблицы NewData
Для этого вам понадобится оператор Merge. MERGE INTO Employees AS target
USING NewData AS source
ON target.EmployeeID = sour