I have written this query to insert data into a table, but before inserting I am checking if the row exists already. I want to insert multiple rows - how can I make it work to insert multiple rows?
INSERT INTO dbo.User (UserID, UserName)
SELECT LIST.ID, LIST.NAME
FROM
(SELECT 104 AS ID, 'James' AS STATUS_NAME) LIST
WHERE
NOT EXISTS (SELECT 1 FROM User US
WHERE US.UserID = LIST.ID AND US.UserName = LIST.NAME)
GO
By multiple rows I mean the below example:
(SELECT 104 AS ID, 'Ross' AS STATUS_NAME) LIST
(SELECT 105 AS ID, 'Colin' AS STATUS_NAME) LIST
(SELECT 106 AS ID, 'Town' AS STATUS_NAME) LIST
(SELECT 107 AS ID, 'Hayley' AS STATUS_NAME) LIST
I know one way is below:
INSERT INTO dbo.User (UserID, UserName)
VALUES (), (), (), ()
How can I implement with checking if the record already exists before inserting for multiple users data entry in a SQL query ?