Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > distinct для TVirtualTable


Автор: vladimir74 7.10.2010, 12:04
доброго времени суток.

мне нужно как то убрать дубикаты из VirtualTable. Очень не хочется пргонять всю таблицу через while not eof. Есть ли другой способ, а то при 25-30-тыс записей это может занять ненужное время..

Автор: Frees 7.10.2010, 12:34
что такое TVirtualTable?есть дока по ним, откуда в ней берутся данные?

Автор: vladimir74 7.10.2010, 12:45
Frees
это виртуальная таблица от компонента UniDac. Типа MemTable. Подключается к стандартным DataSource. Дока есть от UniDac но там по этому компоненту очень мало инфы :( Потому и спросил, может кто то пользовался и знает...

Автор: Frees 7.10.2010, 13:09
в TMemTableEh (EhLib) есть агрегатированные поля, создаешь поле типа TAggregateField, может тут по аналогии..

Добавлено через 1 минуту и 40 секунд
TAggregateField кстати стандартный класс из DB.pas может его в любом TDataSet можно использовать

Автор: vladimir74 7.10.2010, 14:23
Цитата(Frees @  7.10.2010,  11:09 Найти цитируемый пост)
в TMemTableEh (EhLib) есть агрегатированные поля, создаешь поле типа TAggregateField, может тут по аналогии..

да есть. но я считал что это для SUM, MIN, MAX и т.д. ...

Автор: Frees 7.10.2010, 14:31
Цитата(vladimir74 @  7.10.2010,  17:23 Найти цитируемый пост)
да есть. но я считал что это для SUM, MIN, MAX и т.д. ...

пробовал покавырять похоже они просто суммируют записи, я думал это что то типо GROUP BY.. но нет..
поэтому сори за ошибочный совет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)