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

Откуда: Тверь
Сообщений: 882
есть таблица
declare @t table(n int,id int)
insert into @t (n,id)
values
 (1,1)
,(2,1)
,(3,1)
,(4,2)
,(5,2)
,(6,3)
,(7,1)
,(8,1)
,(9,2)

в результате нужно получить
1,1
4,2
6,3
7,1
9,2
т.е. первое значение из группы в столбце ID
22 мар 17, 13:23    [20321026]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31957
PG81
т.е. первое значение из группы в столбце ID
select max(n), id
22 мар 17, 13:28    [20321052]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
declare @t table(n int,id int)
insert into @t (n,id)
values
 (1,1)
,(2,1)
,(3,1)
,(4,2)
,(5,2)
,(6,3)
,(7,1)
,(8,1)
,(9,2);

WITH CTE AS(SELECT rn=ROW_NUMBER()OVER(ORDER BY n)-ROW_NUMBER()OVER(PARTITION BY id ORDER BY n),* FROM @t)
SELECT n=MIN(n), id=MIN(id)
FROM CTE
GROUP BY rn,id
ORDER BY n;
22 мар 17, 13:29    [20321057]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31957
alexeyvg
PG81
т.е. первое значение из группы в столбце ID
select max(n), id
то есть min
22 мар 17, 13:59    [20321182]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
alexeyvg
alexeyvg
пропущено...
select max(n), id
то есть min
Ему же надо и (1,1), и (7,1)
22 мар 17, 14:24    [20321348]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
kirser
Member

Откуда: Киев
Сообщений: 225
PG81,

попробуй так:
declare @t table(N int, ID int)
insert into @t (n,id)
values
 (1,1)
,(2,1)
,(3,1)
,(4,2)
,(5,2)
,(6,3)
,(7,1)
,(8,1)
,(9,2)

SELECT 
	t1.*/*,
	'--',
	t2.* */
FROM @t t1
	LEFT JOIN @t t2 
		ON	t1.N - 1 = t2.N 
WHERE 
	t2.N IS NULL or t1.ID <> t2.ID
23 мар 17, 13:54    [20325703]     Ответить | Цитировать Сообщить модератору
 Re: Просьба помочь с запросом  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 942
kirser
PG81,
попробуй так:

Решение уже дали, и куда эффективнее твоего, так что кыш отсюда.
23 мар 17, 13:57    [20325730]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить