Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Сделать выборку  [new]
quest3
Guest
есть таблица т1
f1|f2
1|2
2|3
4|1
5|4

нужно получить выборку:
1|2|null|null
2|3|1|2
4|1|2|3
5|4|4|1

то есть 3 и 4 столбы это смещенная т1 на одну строку вниз.
5 авг 14, 15:21    [16401877]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
гвест3
Guest
7112нереально сложный чтоли запрос?
5 авг 14, 16:28    [16402289]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
нереально сложно
Guest
------зависит от версии сервера , поле ID можно определять по разному к примеру через row_number()
declare 
@t table (f1 int,f2 int,id int identity)
insert into @t (f1,f2)
select 1,2
union all
select 2,3
union all
select 4,1
union all 
select 5,4




select t.f1,t.f2,t1.f1,t1.f2 from @t t left join @t t1 on t.id=t1.id+1
order by 1
5 авг 14, 17:02    [16402519]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
quest44
Guest
ну а как бе в первоначальной таблице Id не было
5 авг 14, 17:41    [16402735]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
quest3
Guest
и почему left join а не к примеру inner или просто join?
5 авг 14, 17:43    [16402745]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
inner join
Guest
а чем inner join отличается от join
5 авг 14, 17:49    [16402771]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8326
quest44,

в любом случае требуется пронумеровать строки.
5 авг 14, 18:02    [16402832]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
quest44
ну а как бе в первоначальной таблице Id не было
Тогда задача не имеет решения, потому что для таблицы не существует понятия "порядок строк".
6 авг 14, 01:07    [16404208]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
гвесттотсамый
Guest
Mind
quest44
ну а как бе в первоначальной таблице Id не было
Тогда задача не имеет решения, потому что для таблицы не существует понятия "порядок строк".

а ваш уровень владения sql какой?
6 авг 14, 12:40    [16405921]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
GUESTFROMVRN
Guest
гвесттотсамый
Mind
пропущено...
Тогда задача не имеет решения, потому что для таблицы не существует понятия "порядок строк".

а ваш уровень владения sql какой?
а ВЫ это к чему клоните?
6 авг 14, 12:54    [16406005]     Ответить | Цитировать Сообщить модератору
 Re: Сделать выборку  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
гвесттотсамый
Mind
пропущено...
Тогда задача не имеет решения, потому что для таблицы не существует понятия "порядок строк".

а ваш уровень владения sql какой?
Идите дальше "программируйте" в Excel.
6 авг 14, 20:40    [16408649]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить