Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.12.11;
Скачать: CL | DM;

Вниз

Индекс по TAggregateField   Найти похожие ветки 

 
Juice ©   (2005-10-20 19:05) [0]

Возможно ли построить индекс по агрегатному полю типа  TAggregateField, другими словами упорядочить ClientDataSet по этому полю ?


 
evvcom ©   (2005-10-21 09:25) [1]

А ClientDataSet ты откуда заполняешь?


 
Juice ©   (2005-10-21 10:14) [2]


> А ClientDataSet ты откуда заполняешь?

Копирую провайдером из другого датасета, а тот в свою очередь из TSQLDataSet. Разве это имеет значение ?


 
evvcom ©   (2005-10-21 10:26) [3]


> Разве это имеет значение?

Конечно. Не проще ли в TSQLDataSet написать запрос, который возвращал бы в наборе это аггрегированное поле с сортировкой по нему же?
Если будут вопросы типа "как", то СУБД указать не помешало бы.


 
Juice ©   (2005-10-24 10:34) [4]


>  Не проще ли в TSQLDataSet написать запрос, который возвращал
> бы в наборе это аггрегированное поле с сортировкой по нему
> же?

Написать-то просто, но ... Сами CDS (как первый так и второй) это лишь компонены-потомки CDS, на самом деле при помощи опр. методов первый открывает TSQLDataSet а потом производит опр. локальные операции с ним (много) а затем второй также с помощью вызова его метода копирует данные из первого потомка CDS и также производит локальные вычисления. И вот теперь желательно построить локальный индекс по агрегату второго клиент-датасета. Почему локально ? Это тема косвенно обсуждалась в параллельной ветке :) Сами наборы данных незначительные, пару сотен строк, но извлекаются достаточно долго - до нескольких минут. Таким образом, делать несколько последовательных запросов (а это еще не вся цепочка - их 4 на самом деле) будет очень долго, а кроме того необходимые вычисления довольно таки "процессорно-прожорливые" и производятся на клиентской части гораздо быстрее чем на сервере в виде ХП, даже при одном клиентском запросе! О скорости выполн. нескольких паралельных и говорить даже не стоит. Вот такие обстоят дела. Я конечно сомневаюсь, что можно этот индекс сделать однако может кто-то уже с такой задачей сталкивался, не пожалел как я времени и готов нахаляву поделиться своим решением.



Страницы: 1 вся ветка

Текущий архив: 2005.12.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
2-1132550083
Alex7
2005-11-21 08:14
2005.12.11
"DBLookupComboBox".


2-1132488605
alexab
2005-11-20 15:10
2005.12.11
Использование for...to...do


2-1132935214
Jimm
2005-11-25 19:13
2005.12.11
Как пользоваться Utf8ToUnicode?


4-1129121344
Mamed
2005-10-12 16:49
2005.12.11
Open file


2-1132661817
Esenin
2005-11-22 15:16
2005.12.11
Помогите загрузить jpeg в TImage из TMemoryStream.