Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите с запросом, плиз  [new]
A
Guest
declare @T table (ID int, TM smalldatetime)

insert into @T
select 1, '1.03.12' union select 1, '2.03.12' union select 1, '4.03.12' union select 1, '6.03.12' union select 1, '7.03.12'
union select 2, '5.03.12' union select 2, '6.03.12'
union select 3, '1.03.12' union select 3, '2.03.12' union select 1, '3.03.12' union select 3, '7.03.12'

select * from @T
/*
1 2012-03-01 00:00:00
1 2012-03-02 00:00:00
1 2012-03-03 00:00:00
1 2012-03-04 00:00:00
1 2012-03-06 00:00:00
1 2012-03-07 00:00:00
2 2012-03-05 00:00:00
2 2012-03-06 00:00:00
3 2012-03-01 00:00:00
3 2012-03-02 00:00:00
3 2012-03-07 00:00:00
*/
Как получить пропущенные пары, т.е. нужно:
1 2012-03-05 00:00:00
2 2012-03-01 00:00:00
2 2012-03-02 00:00:00
2 2012-03-03 00:00:00
2 2012-03-04 00:00:00
2 2012-03-07 00:00:00
3 2012-03-03 00:00:00
3 2012-03-04 00:00:00
3 2012-03-05 00:00:00
3 2012-03-06 00:00:00

Заранее благодарен.
13 мар 12, 20:51    [12242776]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом, плиз  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Сгенерить все варианты и сделать not exists ( select * from @t ...)
13 мар 12, 20:52    [12242780]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом, плиз  [new]
A
Guest
Пары сгенерил, но как in (select ...) сделать по двум полям

Запрос

select *
from (select distinct ParID from @T) P, (select distinct TM from @T) T
where not exists (select * from @T)

Будет пустым
13 мар 12, 21:09    [12242855]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом, плиз  [new]
A
Guest
Спасибо сделал

select *
from (select distinct ParID from @T) P, (select distinct TM from @T) T
where not exists (select * from @T where ParID=P.ParID and TM=T.TM)
13 мар 12, 21:12    [12242868]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить