Интересный Update

Charly
Дата: 31.10.2005 13:43:19
У меня есть таблица со 100 записями.
Необходимо проставить номера в одном столбце от 1 до 100, но с учётом сортировки по другому столбцу. Как это сделать?
Лентяй
Дата: 31.10.2005 13:50:17
что-то типа
update tbl t set t.numfield = 
  (select count(*) from t where ordfield <= t.ordfield)
Мимопроходящий
Дата: 31.10.2005 13:53:15

Привет, Charly!
Ты пишешь:

Charly
C> У меня есть таблица со 100 записями.
C> Необходимо проставить номера в одном столбце от 1 до 100,
C> но с учётом сортировки по другому столбцу. Как это сделать?
Да как угодно.
Я не возражаю.

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.3

Charly
Дата: 31.10.2005 13:54:22
Мне надо с учётом сортировки.
Я вот делал так

update V_HUMAN
set V_NUM = gen_id(gen_num,1)
ORDER BY STR_NAME, H_NUM, H_SUF, FLAT_NUM, F, I, O, BIRTH_DATE

но матюкается на ORDER BY. :(
Карабас Барабас
Дата: 31.10.2005 13:59:50
Лентяй
что-то типа
update tbl t set t.numfield = 
  (select count(*) from t where ordfield <= t.ordfield)
и чем numfield будет отличаться от ordfield ? :)

ИМХО: процедура нужна
Карабас Барабас
Дата: 31.10.2005 14:01:41
Charly
update V_HUMAN
set V_NUM = gen_id(gen_num,1)
ORDER BY STR_NAME, H_NUM, H_SUF, FLAT_NUM, F, I, O, BIRTH_DATE

но матюкается на ORDER BY. :(

еще бы !
но даже если уберешь ордер бай ... запусти-ка на N клиентах сразу
Лентяй
Дата: 31.10.2005 14:07:35
Карабас Барабас
Лентяй
что-то типа
update tbl t set t.numfield = 
  (select count(*) from t where ordfield <= t.ordfield)
и чем numfield будет отличаться от ordfield ? :)

Значениями.