![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нумерация записей с учетом сортировки [D6, D7, access]
VladBD © (2005-09-11 19:57:00)Вопрос.
Нужно отсортировать таблицу из mdb в DELPHI по нескольким полям
(например поле1 DESC, поле2 ASC, поле3 DESC) и в поле4 проставить номер по порядку сортировки.
1:
Делаю через ADOQUERY запрос с ORDER BY... и потом UPDATE поле4 = переменная+1 where (ID=ADOQUERY.id)
2:
ADOTABLE.sort=...
потом с начала таблицы бегу и
edit
поле4=переменная+1
post
Смысл такой - все это долго работает - особенно от 100.000 записей
Как еще по быстрому можно такое решить.
p.s. например в foxpro есть функция пересортировать по нескольким полям в другую таблицу а потом быстро проставить recno()
Sergey13 (2005-09-12 10:16:00) [1]2[2] VladBD © (11.09.05 23:44)
А назавтра (при следующей выборке или смене сортировки) все это надо повторять? Или это разовая задача?
Nikolay M. (2005-09-12 10:00:00) [2]
> VladBD © (11.09.05 23:44) [2]
Где в этом запросе поле4?
select count (test_2.id_test) as rank, test_1.id_test, test_1.string
from test as test_1 inner join test as test_2 on
test_1.id_test >= test_2.id_test
group by test_1.id_test, test_1.string
order by rank
Что мешает прибавить к первому полю желаемое смещение (12001 в твоем случае)?
VladBD (2005-09-11 23:44:00) [3]а типа в поле4 сохранится номер по порядку???
мне надо чтобы не select был с нумерацией, а проставлять номер (возможно не с единицы а с 12002 например)!!!
Nikolay M. (2005-09-11 20:44:00) [4]http://www.sql.ru/faq/faq_topic.aspx?fid=126
Способ 2 - для тебя.