>SELECT * FROM TempEmployee WHERE EmployeeID NOT IN (SELECT EmployeeID FROM Employee) >>
DECLARE @Employee TABLE (EmployeeID int, EmployeeName varchar(200), ScreenOrder int) DECLARE @TempEmployee TABLE (EmployeeID int, EmployeeName varchar(200)) INSERT INTO @TempEmployee VALUES (1, 'Name 1') INSERT INTO @TempEmployee VALUES (2, 'Name 2') INSERT INTO @TempEmployee VALUES (3, 'Name 3') INSERT INTO @TempEmployee VALUES (4, 'Name 4') INSERT INTO @TempEmployee VALUES (5, 'Name 5') INSERT INTO @Employee (EmployeeID, EmployeeName, ScreenOrder) SELECT TempEmployee.EmployeeID, TempEmployee.EmployeeName, 0 FROM @TempEmployee TempEmployee LEFT JOIN @Employee Employee ON TempEmployee.EmployeeID = Employee.EmployeeID WHERE Employee.EmployeeID IS NULL DECLARE @ScrOrder int SELECT @ScrOrder = MAX(ScreenOrder) FROM @Employee UPDATE @Employee SET ScreenOrder = @ScrOrder, @ScrOrder = @ScrOrder + 1 WHERE ScreenOrder = 0 SELECT * from @Employee INSERT INTO @TempEmployee VALUES (7, 'Name 7') INSERT INTO @TempEmployee VALUES (8, 'Name 8') INSERT INTO @TempEmployee VALUES (9, 'Name 9') INSERT INTO @TempEmployee VALUES (10, 'Name 10') INSERT INTO @TempEmployee VALUES (11, 'Name 11') INSERT INTO @Employee (EmployeeID, EmployeeName, ScreenOrder) SELECT TempEmployee.EmployeeID, TempEmployee.EmployeeName, 0 FROM @TempEmployee TempEmployee LEFT JOIN @Employee Employee ON TempEmployee.EmployeeID = Employee.EmployeeID WHERE Employee.EmployeeID IS NULL SELECT @ScrOrder = MAX(ScreenOrder) FROM @Employee UPDATE @Employee SET ScreenOrder = @ScrOrder, @ScrOrder = @ScrOrder + 1 WHERE ScreenOrder = 0 SELECT * from @Employee