Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Нумерация записей с учетом сортировки [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 - для тебя.


Наверх

Титульная страница Поиск, карта сайта Написать письмо