Также вы можете использовать WINDOW FUNCTION для достижения ваших требований.Для получения более подробной информации о функции Windows, вы можете обратиться к нему.https://docs.microsoft.com/en-us/sql/t-sql/queries/select-over-clause-transact-sql?view=sql-server-2017
create table [Table 1]
(id int ,
[user] varchar(10),
password varchar(10),
token varchar(10))
create table [Table 2]
(id int ,
[user] varchar(10),
password varchar(10),
token varchar(10))
insert into [Table 1] values
(1,'Andres','121212','e12A1'),
(2,'Louie','131312','e12A2'),
(3,'Marcus','141312','e22A2'),
(4,'Mark','141312','e22A2')
insert into [Table 2] values
(1,'Andres','121212','e12A1'),
(2,'Louie','131312','e12A2'),
(6,'Grace','151312','e13A2'),
(7,'Sophia','159312','e14A2')
;with cte1 as (
select * from [Table 1]
union all
select * from [Table 2]
)
,cte2 as (
select *,
count(*)over(partition by id,[user],password,token ) as ct
from cte1 )
select * from cte2 where ct=1
/*
id user password token ct
----------- ---------- ---------- ---------- -----------
3 Marcus 141312 e22A2 1
4 Mark 141312 e22A2 1
6 Grace 151312 e13A2 1
7 Sophia 159312 e14A2 1
*/