Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Пронумеровать по алфавиту  [new]
Куууу
Guest
Туплю что-то есть таблица
с полями UserName и OrderNumber
мне надо обновить OrderNumber так чтобы оно соответствовало порядку записей
как если мы сделаем селект из таблицы с
order by UserName
то есть пронумеровать поле в соответствии с порядком значений UserName по алфавиту.
1 июл 08, 17:20    [5871484]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать по алфавиту  [new]
Jannny
Member

Откуда: Спб
Сообщений: 6424
row_number() over (order by UserName)
1 июл 08, 17:28    [5871542]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать по алфавиту  [new]
Кууу
Guest
точно - спасиб большое
1 июл 08, 17:28    [5871548]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать по алфавиту  [new]
Zloxa
Member

Откуда: СССР ☭
Сообщений: 1033
merge into таблица t
  using(select rowid, row_number() over (order by user_name) order_number from таблица) s
  on (t.rowid = s.rowid)
  when matched then 
    update set t.order_number = s.order_number
сорри, если накосячил синтаксисом
1 июл 08, 17:33    [5871578]     Ответить | Цитировать Сообщить модератору
 Re: Пронумеровать по алфавиту  [new]
Кууу
Guest
Zloxa, да тоже красиво, спасиб, в общем да роунамбер это оно
1 июл 08, 17:48    [5871688]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить