Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выыбор не совпадающих записей  [new]
AlexanderVS
Member

Откуда: Krasnoyarsk
Сообщений: 433
create table #t1(f1 int,f2 int,f3 int)
create table #t2(f1 int,f2 int,f3 int)
insert #t1 select 1,1,1
insert #t1 select 1,1,2

insert #t2 select 1,2,3
insert #t2 select 1,1,1
insert #t2 select 1,2,4
insert #t2 select 1,1,5

Из Т2 надо выбрать строки отсутствующие в Т1.

Есть такое решение:
select distinct t2.*
from #t2 t2 
left join  #t1 t1 on t2.f1=t1.f1 and t2.f2=t1.f2 and t2.f3=t1.f3
where  isnull(t1.f1,0)+isnull(t1.f2,0)+isnull(t1.f3,0)=0
А как еще можно ???
9 ноя 04, 12:52    [1091163]     Ответить | Цитировать Сообщить модератору
 Re: Выыбор не совпадающих записей  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
select distinct t2.*
from #t2 t2 
where not exists(select * from #t1 where f1=t2.f1 and f2=t2.f2 and f3=t2.f3)
9 ноя 04, 12:55    [1091197]     Ответить | Цитировать Сообщить модератору
 Re: Выыбор не совпадающих записей  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Через Left Join можно так
select distinct t2.*
from #t2 t2 
left join  #t1 t1 on t2.f1=t1.f1 and t2.f2=t1.f2 and t2.f3=t1.f3
where t1.f1 is null and t1.f2 is null and t1.f3 is null
9 ноя 04, 12:58    [1091215]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить