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

Откуда: Moscow
Сообщений: 907
Привет.
Все таки я больше C#, прошу прощения наверное за тупые вопросы.

Есть такая таблица

idnameTypeId
1 '...' 1
2 '...' 1
3 '...' 2
4 '...' 2


а нужно получить такую

idnameTypeId Position
1 '...' 1 1
2 '...' 1 2
3 '...' 2 1
4 '...' 2 2


Получается новая тем, что нумеруются элементы внутри групп (TypeId). Причем в порядке следования Id, а не случайно.

Я понимаю, есть FAQ
https://www.sql.ru/faq/faq_topic.aspx?fid=126

И в целом я бы выбрал в нем "Способ №2".
Но во первых насколько это актуально ? Может для Ms Sql 2012 есть более красивые решения.
И во вторых, я что-то не могу сообразить как переделать пример, чтобы он учитывал Группы (TypeId)

Подскажите пожалуйста.
1 сен 15, 16:20    [18096183]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
Glory
Member

Откуда:
Сообщений: 104751
ProBiotek
Я понимаю, есть FAQ

А вы до сих пор работаете с SQL2000 что ли ?

ProBiotek
Может для Ms Sql 2012 есть более красивые решения.

Если вы начнете читать хелп, то найдете ranking functions
1 сен 15, 16:22    [18096214]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
ProBiotek
Member

Откуда: Moscow
Сообщений: 907
Glory,

Но во первых насколько это актуально ? Может для Ms Sql 2012 есть более красивые решения.

:)
1 сен 15, 16:27    [18096259]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
ProBiotek
Member

Откуда: Moscow
Сообщений: 907
Glory,

Кажется ROW_NUMBER() подойдет. Сейчас попробую
1 сен 15, 16:28    [18096280]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
Glory
Member

Откуда:
Сообщений: 104751
ProBiotek
Может для Ms Sql 2012 есть более красивые решения.

Если вы начнете читать хелп, то найдете ranking functions
1 сен 15, 16:28    [18096284]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
ProBiotek
Member

Откуда: Moscow
Сообщений: 907
ок ок.
Спасибо. ROW_NUMBER подошло отлично :)
1 сен 15, 16:50    [18096439]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
ProBiotek
Member

Откуда: Moscow
Сообщений: 907
FAQ конечно какой то глупый.

Тема прикреплена в самом верху. Любой смотрит и перенаправляется в FAQ где он видит что ?
Правильно - старье.
И нигде там нету приписки, что информация касается MS SQL 2000 (если и есть, то очень спрятано).

Было бы логичней увидеть свежую информацию. Те же ranking functions.
Я бы и вопроса не задавал, если бы ответ был в FAQе.
1 сен 15, 17:12    [18096589]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
Glory
Member

Откуда:
Сообщений: 104751
ProBiotek
Было бы логичней увидеть свежую информацию. Те же ranking functions.
Я бы и вопроса не задавал, если бы ответ был в FAQе.

Ну так у вас есть шанс написать новый FAQ
1 сен 15, 20:59    [18097134]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
ProBiotek
Member

Откуда: Moscow
Сообщений: 907
Glory,

нуда нуда. Человек который ищет FAQ напишет замечательнейший FAQ :)
2 сен 15, 10:52    [18098742]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать строки по порядку их ID, в пределах групп  [new]
Glory
Member

Откуда:
Сообщений: 104751
ProBiotek
нуда нуда. Человек который ищет FAQ напишет замечательнейший FAQ :)

Давать советы про FAQ вам это не как-то мешает

Сообщение было отредактировано: 2 сен 15, 10:54
2 сен 15, 10:53    [18098753]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить