Я создал две временные таблицы, в которых TABLE1 содержит все элементы, а TABLE2 имеет только частичный список TABLE1. Как я могу узнать, какие части ТАБЛИЦА 1 имеет то, что ТАБЛИЦА 2 не имеет, или наоборот? Помните, что временная таблица имеет только один столбец из-за оператора DISTINCT.
Мне действительно нужно использовать соединения, но я думаю, что если я СОЕДИНЯЮСЬ в отдельных столбцах каждой таблицы, а затем в состоянии предложения Where, например, столбец 1 не равен столбцу 2, это противоречит.
IF EXISTS (
SELECT *
FROM tempdb.dbo.sysobjects
WHERE id = Object_id(N'tempdb..#TABLE1')
)
BEGIN
DROP TABLE #TABLE1
END
IF EXISTS (
SELECT *
FROM tempdb.dbo.sysobjects
WHERE id = Object_id(N'tempdb..#TABLE2')
)
BEGIN
DROP TABLE #TABLE2
END
------------------------------------------------
select distinct 1.parts as #TABLE1 from List1 1 --- MAIN LIST
select distinct 2.parts as #TABLE2 from List2 2 --- ADDITIONAL LIST
select *
from #TABLE2 left join
#TABLE1
on 2.parts = 1.parts
where 2.parts <> 1.parts